The following are excerpts from our tutorial.

Structural errors in a 3D model need to be repaired before the model is ready for 3D printing. Holes within the object and inverted normals are the most common issues. These types of problems tend to arise if the models were produced, or scanned, using software packages that were not necessarily designed with 3D printing in mind.

scTu3DPBlendStep00

In many cases, spending some time to editing the model can produce an object that is viable for 3D printing. Note, however, that hand editing individual vertices, edges and faces is only realistic if the problem areas are either small or localized, or if the total number of points is small. (It is left to the readers’ discretion to decide if the total amount of time and effort needed to fix the problems with a model is practical.)

The example model used here is based on scanned bone and fossil projects in which the original physical object had damaged or had broken areas. This physical damage in the original sample translated into problems with the digital version of the model predominantly related to missing surface areas at sharp corners, and the model would not print.

scTu3DPBlendStep10abnew

For this example, Blender, a free open-source package, is used (most modeling packages have similar tools). It has a great number of tools, but here only a few are needed and highlighted. “Fill” is an obvious one and it can be used for filling in holes. There are a couple of other commands that may not be so obvious and can be very handy when it comes to the editing process.

One of the tools is “Select Non Manifold” which allows for finding the area that needs fixing or filling; and the other tool is “Normals” which allows for “Recalculate Outside” and “Flip Normals”. Non-manifold geometry is the part of the model that isn’t a smooth, connected surface. This is what we need to fix.

Blenders “Select -> Non Manifold” Command

Blender has a built-in command to find non-manifold geometry in the model. We apply Blenders’ “Non Manifold” function first to find the spots we need to work on.
In “Edit” mode the command can be found in the “Select” menu (both menus are located near the bottom of the screen).
Select -> Non Manifold (or the Keyboard short cut can be used: Shift Ctrl Alt M):

scTu3DPBlendStep18a

Here is the result, an area that is not closed is highlighted in orange. There are a number of stray vertices, edges and faces (likely artifacts from the scanning process):

scTu3DPBlendStep18b

Cleaning and Filling the Hole:

The number of points of concern here are, fortunately, small; less than 50 in total, so editing the model is realistic. The plan is to remove the stray and extra vertices, to create a clean edge around the hole, and to fill the hole making a water-tight model.

Cleaning the area around the hole:

The process used here is to select a few problem vertices, delete those vertices, then check progress with “Select Non Manifold” command. This is done repeatedly until there is a clean edge around the hole. (See the tutorial for complete details.)

scTu3DPBlendStep28abnew

Filling the Hole:

Now that there is a clean edge around a hole, the “Fill” command can be used.
The fill command can be found on the “Mesh” menu.
Mesh -> Faces –> Fill (keyboard short cut: Alt F):

scTu3DPBlendStep30a

And the results:

scTu3DPBlendStep30b

For this example the model still will not print. (Although, somewhat contrived for this example for illustration purposes, the method used here caused issues with the normals. However, in many cases, once all the holes have been filled in the model will actually print).

Fixing Inverted Normals

Even if the model is solid, another problem can arise, and that is “Inverted Normals”. In the image below the normals are displayed as blue lines. However, notice that there are no blue lines, normals, on the new faces, just blue dots. This is because the normals are pointing towards the inside.

scTu3DPBlendStep32d

Two Options: “Flip Normals” or “Recalculate Outside”

Flip selected Normals:

If the areas with inverted normals are already selected by other means (such as will the example here) then using the “Flip Normals” command is an option.
The command need to flip the normals can be found in the “Mesh” menu under “Normals”
(Mesh -> Normals -> Flip Normals).

scTu3DPBlendStep33a

Note that the “Flip Normals” command works on selected faces only.

Recalculate the Outside:

If the areas with the problem normals are not already selected by other means, and/or they would be difficult to select; then the “Recalculate Outside” command is very handy.
This command is also found in the “Mesh” menu under “Normals”
Mesh -> Normals -> Recalculate Outside (Ctrl N)

scTu3DPBlendStep33ab

The Normals (with either method):

scTu3DPBlendStep33b

The Result:

A closed surface:
scTu3DPBlendStep36bcnew

Technically there is still an issue with it comes to printing this particular model, and that is with some of the very thin edges along the new faces. In this case, it is justifiable since the original physical object also had a few very thin edges. The quality if the final printed model will depend on the resolution of the 3D printer used and on the size of the model. In some cases, the thin edges may give an error, or simply not survive the printing process. In this case, the full model with the thin edges was printed successfully and the client was delighted that the printed object was a fair representation of the corresponding physical object.

For step by step instructions see our tutorial page: Tutorial – 3D printing – Fixing Models with Blender.