That’s the number of commits in this release if I counted them correctly.
Big thank you to Edwin for the huge effort and to the RNDR Studio for creating OPENRNDR and making it Free Software And thanks to everyone who contributes and uses it. It makes me happy to be part of this growing family.
ApplicationPreload
This is one feature I enjoy in OPENRNDR 0.4.0. It allowed me to add screenshots, video exporting and pressing ESC to quit to hundreds of programs in a project at once, instead of repeating the code in every program.
Video export pause and resume
Adding video exporting by default required to actually not export video until I press a key (to avoid filling my drive with video files) and then be able to start, pause and resume video exporting. This is possible thanks to the screenRecorder.outputToVideo boolean.
The .grid() method makes it easy to convert a Rectangle into a List<List<Rectangle>>. Previously one could specify the number of columns and rows by using Int arguments, but with ORX 0.4.0 one can also specify the dimensions of the cells by using Double values.
This makes it easy to define cell sizes with specific aspect ratios (for example, squares). The number of resulting columns and rows is calculated by the library according to the the requested cell dimensions, gutter values and window size.
Here a quick demo showing how myShapeContour.hobbyCurve() converts polygonal contours into smooth contours. The bézier control points are made symmetric thanks to John Hobby’s algorithm.
Another new feature mentioned by Edwin above is the Shape.scatter() function, which allows to fill shapes with 2D points while keeping the specified distance to other points and to the edge of the shape.