OpenSCAD 2014.03 has just been released!
The source code, as well as binaries for Mac OS X, Windows and Linux are ready for download.
Lots of thanks go to everyone who've contributed to this release through development, testing, bug reports, discussions and bounties.
A summary of changes since last release follows.
Summary of changes
- 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
--infoparameter prints system/library info
--csglimitparameter 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)
- Reading empty STL files sometimes caused a crash
OPENSCADPATHnow 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
- child() is no longer supported. Use children() instead.
- polyhedron(triangles=[...]): Use polyhedron(faces=[...]) instead.
- 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