mirror of https://github.com/vitalif/openscad
2.2 KiB
2.2 KiB
Language Features:
- Added diameter argument: circle(d), cylinder(d, d1, d2) and sphere(d)
- Added parent_module() and $parent_modules
- Added children() as a replacement for child()
- Unicode strings (using UTF-8) are now correctly handled
- Ranges can have a negative step value
- Added norm() and cross() functions
Program Features:
- Cmd-line: --info parameter prints system/library info
- Cmd-line: --csglimit parameter to change CSG rendering limit
- Cmd-line: Better handling of cmd-line arguments under Windows
- GUI: Added Reset View
- GUI: Added Search&Replace in editor
- GUI: Syntax highlighting now has a dark background theme
- GUI: We now create a backup file before rendering to allow for recovery if OpenSCAD crashes/freezes
- GUI: Accessibility features enabled (e.g. screenreading)
Bugfixes/improvements:
- Reading empty STL files sometimes caused a crash
- OPENSCADPATH now uses semicolon as path separator under Windows
- polyhedron() is now much more robust handling almost planar polygons
- Automatic reloads of large designs are more robust
- Boolean logic in if() statements are now correctly short-circuited
- rands() with zero range caused an infinite loop
- resize(, auto=true) didn't work when shrinking objects
- The $children variable sometimes misbehaved due to dynamic scoping
- The --camera cmd-line option behaved differently then the corresponding GUI function
- PNG export now doesn't leak transparency settings into the target image
- Improved performance of 3D hull() operations
- Some editor misbehaviors were fixed
- Stability fixes of CGAL-related crashes
- Windows cmd-line can now handle spaces in filenames
- Default CSG rendering limit is now 100K elements
- Fixed a crash reading DXF files using comma as decimal separator
- Fixed a crash running the cmd-line without a HOME env. variable
- Intersecting something with nothing now correctly results in an empty object
Deprecations:
- child() is no longer supported. Use children() instead.
- polyhedron(triangles=[...]): Use polyhedron(faces=[...]) instead.
Misc:
- Test framework now shares more code with the GUI app
- Test report can now be automatically uploaded to dinkypage.com
- Better compatibility with BSD systems
- Qt5 support