v0.2.3
Pre-release
Pre-release
- Fix a possible panic during multithreaded 3D rendering of very small images
- Add
compareoperator (equivalent to<=>in C++ orpartial_cmpin Rust, with the difference that unordered results are returned asNAN) - Fix a bug in the x86 JIT evaluator's implementation of interval
abs - Add generic
TransformedShape<S>, representing a shape transformed by a 4x4 homogeneous matrix. This replacesRenderConfig::matas the flexible strategy for rotation / scale / translation / perspective transforms, e.g. for interactive visualization (where you don't want to remap the underlying shape) - Introduce a new
Boundstype, representing an X/Y/Z region of interest for rendering or meshing. This overlaps somewhat withTransformedShape, but it's ergonomic to specify render region instead of having to do the matrix
math every time.- Replaced
RenderConfig::matwith a newboundsmember. - Added a new
boundsmember tomesh::Settings, for octree construction
- Replaced
- Move
IntervalandGradtofidget::typesmodule, instead offidget::eval::types. - Fix an edge case in meshing where nearly-planar surfaces could produce vertexes far from the desired position.
- Add the
modulo(Euclidean remainder) operation - Add logical operations (
and,or,not), which can be used to build pseudo-conditionals which are simplified by theTracingEvaluator.