Making 3D models with SolidPython & OpenSCAD


SolidPython is a Python module with methods that generate OpenSCAD code. Using SolidPython, one can generate CSG (constructive solid geometry) models for 3D objects at a level slightly higher than that of OpenSCAD itself. Rudimentary SolidPython documentation appears at (in HTML) and at (in PDF).


OpenSCAD, as documented at some length on WikiBooks, is a system that accepts functional descriptions of CSG models and draws interactive 2D projections of the resulting 3D objects. OpenSCAD also can export model data in half-a-dozen 3D or CAD data formats, like STL, DXF, and SVG. 

This website presents some designs made using SolidPython and OpenSCAD.

It also presents two shell scripts useful when running SolidPython programs. The first  is “exec-on-change”, a shell script to run a SolidPython program when the program changes; that is, to automatically run the program each time you save a SolidPython program file.  This results in OpenSCAD quickly updating its display after each program save.

The second is “await-pydoc-update”, a shell script that automatically runs pydoc to extract a python program’s doc strings when the program changes, and refreshes a corresponding browser page showing the documentation.