Fixing Geometry

I find that quite a few of the 3D printing stl files, that are available on the Internet, have geometry errors in them.  A lot of the time, the slicer can repair the geometry and the fixes are not apparent in the print.  Other times, there are big gaping holes, weird indents, or projections, which make the resulting print undesirable.

Here are a few short steps that I use to reduce errors in models and stl files.  On other pages, in the blog, this is referred to as 'clean up the geometry'. 

If there is a problem with a model, I adjust, tweak, fix or repair the geometry, as needed.  Sometimes I want to reduce the requirements for supports.  Other times, I just want to remix the model for form or function.  To accomplish this, I use Blender and the 3D-Print Toolbox add-on.

When I first load an stl file it is, of course, completely triangulated.  I use the 3D-Print Toolbox add-on a lot during modelling to determine if anything needs to be repaired.  This add-on will scan the selected model and report on anomalies in the geometry.  You can see a desciption of this add-on from blender.org here.  There is another, at this link , but expect a fair amount of ads.

The first step is to put the model editor into edit mode.  Select all of the vertices, and merge by distance.  This can sometimes fill holes in the manifold.  Two faces that have a common edge might not be connected with common vertices, causing a hole.  Making sure that face normals point in the correct direction can also fix non-manifold issues.

After running the add-on, using the Check All button, I usually pay attention to non-manifold edges and intersecting faces first.  Clicking on a field in the Result overlay will turn on Faces mode and select the offending faces.  This is sometimes of little help as some of the faults can be hidden by other geometry.  To see what needs to be fixed,  I switch to vertex mode and toggle X-Ray on.  This will clearly show where the vertices and edges of interest are.

Then it is a matter of selecting one or more vertices and focusing in on the selection using the dot '.' keyboard shortcut.  Repairs sometimes require adding, moving, merging or deleting vertices.  After each change, I do a repeat of Check All, to see if improvements have actually been made.  Sometimes, a change fixes multiple faults, other times, things get worse, and an Undo is needed.

The Undo buffer in Blender should be set to the maximum of 256.  Sometimes I wish it could be higher.  This is set in Preferences->System->Undo Steps.

I pay less attention to non-flat faces as they go away during export triangulation.  I still take a look as, you don't get to determine how a face breaks into triangles, or if there are vertices along an edge that do not need to be there.

Thin faces and zero faces can sometimes be ignored. In fact, the export triangulation process can create them.  If the exported stl file needs repaired, even though the source model is fine, then I will duplicate the source model and triangulate the faces before exporting.  This keeps the source model structure for easier editing, and adds a step when exporting.  There seems to be a difference in triangulation when exporting.

I remove most sharp edges.  I don't know which will be ignored by the slicer.  Previewing the sliced geometry line by line can determine whether it ignore them.  For the most part, they are not printed.

The add-on will aways report some overhanging faces.  All of the bottom face geometry will be reported as overhanging.  For example, a perfect cube has one overhanging face, the bottom.  It is still important to look at the overhanging geometry.  There could be something that is hanging in space and supports are not intended to be enabled.