Procedural Model Generation

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

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:

Tiny Little Staircase

Tiny Little Staircase

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:

Weird Basket Thing

Weird Basket Thing

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:

Brownian Motion Vase

Brownian Motion Vase

I’m very pleased with the result of this print. I’m continually amazed by the overhangs I can get away with.

Vase mid-print

Vase mid-print

And my most recent project, a procedurally generated tree (again, the overhangs never cease to amaze me):

IMG_20140107_185401

Leave a Reply

Your email address will not be published. Required fields are marked *