Designing for 3D printing with Rhinoceros

Rhinoceros (Rhino) is a NURBS-based 3D modeling software widely used in design, architecture, and jewelry. Rhino offers excellent precision in creating complex and curved surfaces, but because it works with NURBS surfaces (and not native solids like parametric CAD), it requires special care when preparing models for 3D printing.

The fundamental step is the conversion of the NURBS surfaces into a polygon mesh (STL file), checking that the geometry is correct.

Volume and closed objects

For 3D printing, the model must consist of closed polysurfaces or closed meshes. Only these types of objects can be exported correctly to STL format.

A polysurface is closed when all its edges fit together perfectly, with no gaps. In Rhino, you can check this in the Property: a valid object will display the text “Closed Polysurface” or “Closed Mesh”.

If your model contains open surfaces, you can:

- Use Join to join adjacent surfaces

- Use Cap Planar Holes to close planar openings

- Use Patch to fill non-planar openings

– Give thickness to a single surface with OffsetSrf (with the option Solid=Yes)

Manifold and normal

In Rhino, the most common problems that prevent correct printing are:

Naked Edges

These are surface edges that are not joined to other surfaces. You can identify them with the command ShowEdges (selecting Naked Edges): Rhino will highlight them in color.

To correct them:

JoinEdge: force joining of adjacent edges (use with caution)

– Manually rebuild the problem surface

Bad Objects

Use the command SelBadObjects to automatically select all objects with invalid geometry. The panel Properties will show “Object is not valid” if an object has problems.

normal

Surface normals must point outward. Use the command Say to display the direction of the normals and Flip to reverse them where necessary. The command UnifyMeshNormals automatically orients all normals in the same direction.

Attention to the dimensions

It's good practice to design at the desired print size. This is especially important for architectural models, where the tendency is to design at 1:1 scale and then scale it up during export. This approach can cause problems with fine details.

Set the correct units at the beginning of the project: File → Properties → Units. For 3D printing you typically work in millimeters.

The wall thickness must meet the minimum requirements for the chosen material. Use the command Distance or Thickness to check the thicknesses. See the data sheet Technical details on the page of each 3D printing material.

Check and correct the model

Rhino offers several analysis tools in the toolbar Analyze:

Step 1: Check the object type

Select the object and check in the panel Properties: must be “Closed Polysurface” or “Closed Mesh”. You can use quick selection commands:

SelClosedPolysrf: select all closed polysurfaces (ready for printing)

SelOpenPolysrf: select open polysurfaces (to be corrected)

SelBadObjects: select objects with invalid geometries

Step 2: Identify the open edges

USA ShowEdges → Naked Edges to view unjoined edges. Fix with Join, JoinEdge or reconstructing the surface.

Step 3: Check the watertightness

The command Check performs a complete analysis of the object and reports any problems found.

Step 4: Create the control mesh

Before exporting, create a mesh with the command Mesh to visually check the quality. Use FlatShade to visualize the faceted mesh and identify areas with insufficient resolution.

These tools are particularly useful for correcting AI-generated models, which often contain geometry errors. Read our A guide on how to 3D print AI-generated models

Export in STL format

Step 1: Select the objects to export

Select only the closed polysurfaces or closed meshes you want to print.

Step 2: Export

Go to File → Export Selected and choose the format Stereolithography (.stl).

Step 3: Configure the mesh resolution

Rhino will display the mesh creation options. The basic settings are:

Maximum distance edge to surface: This is the most important parameter. It indicates the maximum distance between the mesh and the original surface. A good starting value is 0.01 mm for precision prints, 0.05 mm for prototypes.

Maximum angle: Controls the subdivision of curved surfaces. Leave blank or set to 0 to disable.

Maximum aspect ratio: Controls the shape of the triangles. Leave blank or set between 4 and 7 if necessary.

USA Preview to view the mesh before confirming. If curved surfaces appear faceted, reduce the value of Maximum distance edge to surface.

Step 4: Choose the format

Select Binary for a smaller file (recommended). The ASCII format is larger but readable with a text editor.

Note: If Rhino displays a warning that the mesh is not closed, go back to the model and fix any open edges before exporting.

Important: uncheck the option “Export open objects” to avoid exporting geometries with holes that cannot be printed.

Export to OBJ format

For 3D printing in color or with texture:

1. Select the objects and go to File → Export Selected

2. Choose the format Wavefront OBJ (.obj)

3. In the dialog box, make sure the options are selected Includes UV is Write Materials

4. Rhino will generate an .obj file and an .mtl file with the material information

To order a 3D print with texture and color, create a .zip archive containing the .obj, .mtl file and any texture images and upload it to the 3D printing upload page.

Reduce the weight of the file

If the STL file is too large:

1. Increase export tolerance: increases the value of Maximum distance edge to surface in the STL export options

2. Reduce existing meshes: use the command ReduceMesh specifying a polygon reduction percentage

3. Simplify the model: remove details too small to print (microscopic fillets, very fine engravings)

4. Check the file size: For most printers, an STL file under 40 MB is easily manageable. Larger files slow down the slicer's processing.


Frequently asked questions

Is Rhino suitable for 3D printing?

Yes, Rhino is widely used for preparing models for 3D printing, especially in jewelry, industrial design, and architecture. The precision of NURBS surfaces allows for the creation of complex shapes with great control. Careful attention must be paid to mesh conversion and closing polysurfaces.

What is the difference between a polysurface and a mesh in Rhino?

A polysurface is a mathematically precise NURBS geometry composed of continuous surfaces. A mesh is an approximation composed of triangles. For 3D printing, Rhino converts polysurfaces to meshes during STL export. The mesh quality depends on the conversion parameters you set.

What are “Naked Edges”?

These are surface edges that are not joined to other surfaces, creating openings in the model. A model with open edges cannot be 3D printed because it is not “watertight” (watertight). USA ShowEdges to identify them and Join or JoinEdge to correct them.

How do I check if my model is ready to print?

Check that the Properties panel shows “Closed Polysurface” or “Closed Mesh”. USA SelBadObjects to find invalid geometries and ShowEdges to search for open edges. Finally, use Check for a complete analysis.


Done! Now you can upload a file

or read the FAQ