Changelog for implicit-0.4.1.0
Version 0.4.1.0 (2023-12-18)
-
ExtOpenScad interface changes
- Added
randsandlookupsupport #433 - Added several primitives
cone(r, h, center)torus(r1, r2)ellipsoid(a, b, c)
- Adding vector-matrix, matrix-vector, and matrix-matrix multiplication support to
*#414 - Several mathematical functions that have undefined values for some inputs or tend to infinity have been given finite but extremely large bounds.
- Added
-
Haskell interface changes
- Added matching primitives for
cone,torus, andellipsoid - Adding vector-matrix, matrix-vector, and matrix-matrix multiplication support to
mult#414
- Added matching primitives for
-
Other changes
- Migrating StateC and StateE to a ReaderT/WriterT/StateT transformer stack, rather than being just StateT. #432
- Fixing an off by one error in variable stack lookups. #431
- Fixing exponent operator precedence. #428
- Fixing some crashes relating to unclosed loops when generating surfaces. #373
- Addition of canonicalization pass and
canonicalizemember function forObject#445
Version 0.4.0.0 (2022-06-06)
-
Changelog started. Previous release was
0.3.0.1. -
Haskell interface changes
- Added support for XY-scaling on
linear_extrude#269ExtrudeRMscale type changes from(Either ℝ (ℝ -> ℝ))toExtrudeRMScale
- Replaced the Rect primitives with SquareR and CubeR #296
squareRandcubeRare now available
- Added support for mirroring objects around axis using
mirrorfunction #300 differenceRchanges type to require mandatory shape to substract from #294- from
Object obj vec => R -> [obj] -> obj - to
Object obj vec => R -> obj -> [obj] -> obj
- from
- Both
SymbolicObj2andSymbolicObj3now haveSemigroupandMonoidinstances, where<>acts asunion#301 - Added
rotateQfunction for rotating with Quaternions #314 ℝ2andℝ3are now usingV2andV3fromlinearinstead of tuples #342- Rounding is now separate from primitives #362
- Introduces
withRoundingfunction. - Instead of
primitiveR roundingValue ...we now usewithRounding roundingValue (primitive ...) - Replaces
squareR,rectR,polygonR,cubeR,rect3R,extrudeR,extrudeRMwith versions without rounding arugment (square,rect, ...).
- Introduces
- Removed
ExtrudeRotateR#365 rotateExtrudenow longer accepts rounding paramater #367- Added
transform3(transform using 4x4 matrix representing affine transformation) #410 - Changed
Object obj vecclass toObject obj f a#420
- Added support for XY-scaling on
-
ExtOpenSCAD interface changes
-
Other changes
- Fixed the ExtOpenSCAD lexer bug where newlines were part of identifiers #256
implicitsnapnot built by default anymore #272- Can be enabled again with
cabal configure --flag=implicitsnap
- Can be enabled again with
- Fixed vertex coordinates of OBJ output #281
discreteAproxofNormedTriangleMeshnow runs in parallel #282
- Binaries now built with default
-rtsopts "-with-rtsopts -N -qg -t"to allow automatic parallelization - Added haddocks for Haskell eDSL #284 & #287
- Added golden test machinery #311
- Added quickcheck test machinery for implicit functions #316
- Rotate now internally uses quaternions #314
- Fixes to triangle generation #355 and #375
- ExtOpenSCAD vector addition #408