OpenSCAD: Constructive solid geometry CAD at long last

example2.png

My first introduction to 3D modelling, way back in 1999, was ray-tracing with the classic freeware Persistence of Vision (POV-Ray) package. The whole point of POV-Ray was (and is) to program a virtual 3D scene that can be rendered into still images very slowly, but in amazing detail, using ray-tracing algorithms. It was never about producing models for 3D printing or other computer-assisted manufacture techniques. But what was cool about POV-Ray was that, at least in its native implementation, there was no GUI or WYSIWYG interface. To make POV-Ray models, you used a text editor to program objects using so-called "constructive solid geometry" (CSG) techniques, in which complex forms were built up as unions, differences, and/or intersections of "primitive" shapes like cubes, circles, and prisms. It was all done in a special programming language native to the POV-Ray environment. To see what you'd made, you had to render the file.

Almost a decade later, when I started messing around with modern 3D modelling software for the purpose of rapid prototyping, I was disappointed to discover that my POV-Ray CSG skills did not port. Everything was resource-hungry interactive WYSIWYG interfacing, which definitely has its advantages, but also typically has a pretty steep learning curve as you learn just to move around the virtual 3D space of the modelling environment. It can be difficult to select exactly the point you want, to snap exactly to the distance you intend, and so forth. For a couple of personal projects, I manage to kludge together some tools that would let me design objects in POV-Ray and then convert them to STL files, but it was always an unreliable and wonky process.

So I was really stoked this morning to read this post over on the Thingiverse Blog about the advent of OpenSCAD, which does for 3D CAD what POV-Ray did for raytracing. At long last, you can program your 3D CAD models instead of sculpting them. And it's free! I can hardly wait to try it out.



Recent Entries

Comments

Oldest comments listed first.

Posted by: Jeff on November 25, 2009 at 9:45 AM

BRL-CAD also uses CSG as its base interface (it originally ran on the PDP-11, so, not enough system resources to make a WYSIWYG...).


Posted by: DU on November 25, 2009 at 10:03 AM

sounds like a neat thing...

...but there's almost nothing there yet. It's a page with some source and small wikibook. There's no forum or mailing list to see how/if people are using it. There aren't even any instructions on how to build it from the source and no configure or makefile or anything.


Posted by: Anonymous on November 25, 2009 at 10:40 AM

Oh open source / free CAD, where would I be without you?

Of all the important lessons and skills you have taught me, the one lesson I cherish most of all is... how you've taught me to draft by hand.

Oh snap! That's right, I said it! Anonymously, but still...


Posted by: Chris on November 25, 2009 at 4:30 PM

Back around '98 I worked for a company called iCad/Concentra that was all about automating design by capturing the design/decision rules. So of course the (proprietary, in-house) software was all CSG. For the last 10 years though I've been designing stuff in WYSIWYG CAD and been pretty happy about it.

I guess if you're a professional SW engineer CSG seems like the easiest approach. I suspect most people would prefer to use SketchUp


Posted by: failrate on November 25, 2009 at 8:44 PM

I've been using openSCAD a bit recently. It's pretty good. Almost immediately after the Thingiverse article on it appeared, the creator moved the sparse documentation to a wikibook format (and I immediately added a section on modules). So, he seems pretty responsive.

The takeaway from this is that anyone could take the time to write a good interface to OpenCSG and CGAL in their preferred language. This is a great project as a proof of concept. So, even if you think the implementation has flaws, it should show you that it's reasonable for a single person or small team to come up with software that rivals the functionality of expensive commercial packages.


Posted by: ronww on November 27, 2009 at 3:15 PM

There is also VRML

The Virtual Reality Modeling Language has been around for a long time. It can be hand edited or generated programmatically.


Posted by: wizard23 on November 29, 2009 at 1:15 PM

VRML is just for rendering. it does not help you if you want to have a trinagle mesh STL file for 3D printing with a RepRap for example.

OpenSCAD does both. It gives you a rendering of the object and it can generate a STL file.


Leave a comment


Subscribe to MAKE!Subscribe to MAKE Magazine!

Subscribe today, save 42% and get web access to MAKE free. MAKE Digital Edition is available only to subscribers.

$34.95 / 1 year
(4 Quarterly Issues)

Subscribe now


Void your warranty, violate a user agreement, fry a circuit, blow a fuse, poke an eye out. Make: The risk-takers, the doers, the makers of things... Welcome to Make: Online!


CRAFT Maker Shed Maker Faire MAKE television




Check out more videos from MAKE.

Maker SHED

Connect with MAKE

Be a MAKE fan on Facebook MAKE on Facebook
Visit our Facebook page and become a fan of MAKE!
MAKE on Twitter MAKE on Twitter
Follow our MAKE tweets!
MAKE Flickr Pool MAKE on Flickr
Join our MAKE Flickr Pool!
    make_tips on Twitter



    MAKE Archives

    Make: Money

    Make: Science Room
    Subscribe to MAKE Magazine!

    Make: Online editors and authors!

    Gareth BranwynGareth Branwyn
    Editor-in-Chief


    Phillip TorronePhillip Torrone
    Senior Editor
    | Web | Twitter


    Becky SternBecky Stern
    Associate Editor
    | AIM | Twitter


    Marc de VinckMarc de Vinck
    Contributing Writer
    | AIM | Twitter


    John ParkJohn Park
    Contributing Writer
    | Twitter


    Sean RaganSean Ragan
    Contributing Writer
    | Twitter


    Matt MetsMatt Mets
    Contributing Writer
    | AIM | Twitter


    Dale DoughertyDale Dougherty
    Editor & Publisher
    | Twitter


    Shawn ConnallyShawn Connally
    Managing Editor
    | Twitter


    Goli MohammadiGoli Mohammadi
    Associate Managing Editor

    Kip KayKip Kay
    Weekend Projects
    | AIM | Twitter


    Collin CunninghamCollin Cunningham
    Contributing Writer
    | AIM | Twitter

    Adam FlahertyAdam Flaherty
    Contributing Writer
    | AIM | Twitter


    John BaichtalJohn Baichtal
    Contributing Writer
    | AIM | Twitter



    More contributors: Mark Frauenfelder (Editor-in-Chief, MAKE magazine), Kipp Bradford (Technical Consultant/Writer), Chris Connors (Education), Diana Eng (Guest Author), Peter Horvath (Intern), Brian Jepson (O'Reilly Media), Robert Bruce Thompson (Science Room)

    Suggest a Site!

    Advertise here with FM.

    Why advertise on MAKE?
    Read what folks are saying about us!

    Click here to advertise on MAKE!



    Current Podcast

    itunesdl.gif Behind the Scenes at MAKE and CRAFT In January, many of the remote MAKE/CRAFT team members (myself included) convened at the Maker Media headquarters at O'Reilly Media in Sebastopol, California. Take a look behind the scenes of your favorite DIY publications as Goli Mohammadi gives us... More...

    Get the Make: Online sent via email
    Enter your email to receive Make: Online each day:



    Sign up for the Make: Newsletter

    Our Make: Newsletter covers news from maker Media, has original columns, Shed deals, and more! You can also read the archives of past issues.


     



    MAKE Fascination video series brought to you by Dow

    Make: Education
    MAKE: en EspaƱol MAKE: Japan
    Important please read


    Subscribe to MAKE Magazine!

    Recent Posts from the Craft: Blog