As a programmer, it didn’t take me very long to look into programmatic modeling tools after I got my 3D Printer. And it turns out there are some pretty good options available. Here’s what I have done so far:
OpenSCAD is a programmatic CAD tool. It’s essentially an editor that lets you code in a simple programming language, with a display window in which to view your model. The simplicity of OpenSCAD is very powerful, and within a few minutes I was creating new designs.
The first model I made was a simple spiral staricase. In 10 lines of code I was able to produce this:
My apologies for the low quality image, but I hope the point comes across: programmatic modeling is awesome! Later, in quite a few more lines of code, I produced this:
OpenSCAD is fun, but its language (and editor) are a bit lacking, and I quickly began missing the advantage of a real programming language.
Getting more power out of OpenSCAD
OpenSCAD has a feature which monitors a .scad file, and re-renders the file every time it changes. This is great for using your preferred editor, and especially great if you want to programmatically generate .scad programs.
There are a few scad generation libraries around, but I went with SolidPython. Now that I was using a more powerful language, I had much more freedom with my creativity. My first piece:
I’m very pleased with the result of this print. I’m continually amazed by the overhangs I can get away with.
And my most recent project, a procedurally generated tree (again, the overhangs never cease to amaze me):