"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." (Robert A. Heinlein)

Saturday, 23 February 2013

Open SCAD: the programmer-oriented CAD

I often surf the Web looking for applications programming environments completely different from what I usually work with (I develop web application and services). Among these “completely different” things 3D graphics is one of the most appealing. So, while surfing the web I stumbled into this rather unusual CAD application: Open SCAD.


Open SCAD is a 3D CAD application widely used among the 3D printers community. What makes it different from traditional CAD applications is the way you make your drawing: instead of using the mouse to drag lines, boxes in the classic four panels view (front, side, top and perspective) you “simply” write a program that defines how your drawing is.

Open SCAD language provides methods for the basic primitive solids like cube(), sphere(), cylinder() … methods to manipulate them like translate() and rotate(), CSG (constructive solid geometry) operations like union() difference(), intersection() … up to more complex operations like extrude() or rotate_extrude().