SketchUp, OpenSCAD, and 3D Printing

October 31, 2017 | ProgressTH SketchUp is a free and easy 3D design application. Its intuitive interface and widespread adoption by designers, engineers, and hobbyists around the world help make it one of the easiest applications to get into, grow in, and find resources for your projects.

Left: Original F.Lab centrifuge rotor. Middle: Our second attempt in SketchUp to smooth-out the rotor. Right: A very smooth 400 side rotor made in OpenSCAD.

The speed at which you can "sketch" out 3D models is one of the most powerful aspects of SketchUp.

However, as few as they may be, SketchUp does have a few shortcomings.

When trying to merge complex, high-resolution objects together to add or subtract geometry, SketchUp often falters. For our 3D printed DIYbio centrifuge project, the rotor posed a particular problem.

The Problem: Line Segments 


In many 3D modeling applications, circles are made using line segments. The default number of line segments used in SketchUp for a circle is 24. If you increase the number of line segments, the circle will appear smoother, however, when attempting to modify a cylinder with, say, 52 or even up to 80 line segments, SketchUp runs into difficulties. Faces begin to disappear, and the geometry overall becomes confused and unusable especially for 3D printing.

We wanted the rotor to be as smooth as possible, but only managed to make a low-poly rotor for the first centrifuge version. We made a second attempt with up to 80 line segments along the outer circumference of the rotor, but the inner surfaces still were low-poly where the 10mm test tube openings intersected the rotor.

The Solution: OpenSCAD

Finally, Thingiverse user tkircher created a modification of the rotor in OpenSCAD, a free, opensource computer-aided design application, with over 200 sides. The resulting rotor was incredibly smooth.

The OpenSCAD file was included, and by just downloading OpenSCAD, looking at a few examples of the code that is used to define geometry in the application, and then modifying tkircher's file, we were able to create a rotor with up to 400 sides. The above image shows our first and second SketchUp rotors on the left next to our first OpenSCAD rotor.

The amount of time it took for us to download OpenSCAD, learn its basics, and create our high-resolution rotor (especially thanks to tkircher) was still less time than we've spent trying to smooth-out the rotor in SketchUp.

While SketchUp is still by far our application of choice for 3D design, those few examples it has trouble with regarding complex geometry are easily handled by OpenSCAD. If you haven't gotten into OpenSCAD yet, you should give it a try.

In addition to this benefit, online 3D model warehouse Thingiverse has a customizer feature that uses OpenSCAD. Learning OpenSCAD allows you to edit the many files from this powerful application now turning up across Thingiverse, including on our own Thingiverse collection now.

Follow ProgressTH.org on Facebook here or on Twitter here.