Latest news
Tips & GuidesRhino

Rhino 8 guide: Find faulty geometry and improve model integrity

Rhino 8’s official documentation explains how to find faulty objects with the Check and SelBadObjects commands, and which tools can help inspect NURBS and mesh issues. This guide walks through model checks step by step.

Contemporary interior model inspected for geometry issues and clean surface joinsAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. Check reports errors in the data structure of selected objects; it does not detect every possible geometric issue.
  2. SelBadObjects selects objects that fail the Check inspection.
  3. Small edges and self-intersecting curves are among the conditions that can cause problems later in a model.
  4. For STL/SLA, meshes can also be checked for degenerate faces, non-manifold edges, and duplicate faces.

Rhino 8’s official documentation describes commands for inspecting faulty objects and geometry defects in a model. Check reports on the data structure of selected objects, while SelBadObjects selects objects that fail this inspection. The documentation also covers potential issues in NURBS and mesh models, along with tools that can help inspect or fix them. This guide walks through checks to perform before delivery or production.

1. Inspect selected objects with Check

  1. Select the objects you want to inspect and run the Check command. The documentation gives the menu path as Analyze › Diagnostics › Check. Rhino reports whether the selected objects are valid.

  2. If the report shows an error, treat it as a sign that the object’s data structure needs investigation. Check is one of the first tools you can use to diagnose potential geometry issues.

  3. A clean report does not prove that the model is flawless. The official documentation notes that it can be difficult to automatically detect surfaces that fold back on themselves or self-intersect, and that Check does not inspect for every issue of this kind.

  4. Consider deleting or remodeling faulty objects. The documentation recommends deleting or remodeling objects with errors.

Use the Check report as a diagnostic output that points to where to begin, rather than as final quality approval. The command checks the object’s overall structure, but it does not guarantee that every defect will be found automatically. That’s why it’s important to inspect critical surfaces and connected edges separately.

2. Select faulty objects and record when the problem occurs

  1. Run SelBadObjects to select objects that fail the Check inspection. The menu path is Analyze › Diagnostics › Select Bad Objects.

  2. If an error appears when opening a file, importing another file, or after a modeling command, note when the message appeared. Rhino’s documentation describes separate notification scenarios for these cases.

  3. If the Check New Objects dialog appears during normal modeling, the documentation treats it as a possible sign of a Rhino error. Record the name of the running command and the options active at the time; undo the operation, export the objects used by the command to a new file, and report the issue with this information.

  4. For further investigation, What provides details about the selected object. List lists the object’s data structure; the documentation describes this command as an information tool for developers.

Recording when the notification appeared and what operation preceded it can help narrow down the investigation. In particular, don’t lose this context if the error appears in an imported file or after a specific command. The official documentation also explains how to record the objects and command options if a Check New Objects warning appears during normal work.

3. Avoid small geometries along NURBS edges

Rhino’s documentation notes that a planar surface can be created from a self-intersecting curve, but the resulting surface may be defined in a way that can cause problems later. Another risk is that, when edges belonging to adjacent surfaces are matched, a very small trimming edge can become even more compressed and lose its meaningful direction.

To build a more robust model, try to avoid creating unnecessary small edges. Rather than adding very short lines between two parts of a curve, bringing the endpoints closer together is one of the approaches recommended in the documentation. Joining adjacent parts with a clean, simple edge match is also a general modeling principle that can reduce the risk of problems.

If Check reports an issue in an existing model, the documentation mentions Explode, Untrim, Trim again, and Join as a possible repair sequence. When there are many small edges, SplitEdge can be used to make edge structures compatible; the correct edge pairs can then be matched manually with JoinEdge. These tools are not presented as an automatic fix that will produce the same result in every file; difficult models may require multiple inspection and repair tools.

4. Check mesh structure separately for STL/SLA

For models intended for STL/SLA printing, the density of long, narrow mesh faces can make things difficult for some devices. This may result in a slower printing process, an unwanted output, or insufficient memory. Rhino’s documentation notes that the MeshRepair command can be useful during this preparation stage.

Here are some tools grouped by defect type:

  • Use ShowEdges to find naked edges in a mesh. The documentation lists FillMeshHole, FillMeshHoles, and MatchMeshEdge as options to try to fix them. Naked edges can occur in meshes, but may cause problems in rapid prototyping.

  • Disconnected pieces can be separated with SplitDisjointMesh, and duplicate faces can be handled with ExtractDuplicateMeshFaces. The tool given in the documentation for fixing face directions is UnifyMeshNormals.

  • Use CullDegenerateMeshFaces for degenerate faces. Zero-length edges are also generally said to result from such faces. For non-manifold edges, the recommended sequence is to run this command first, followed by ExtractNonManifoldMeshEdges.

Don’t skip these checks based only on how the model looks on screen. Inspect the mesh structure separately when preparing for printing, and choose tools according to the defect you find.

Common mistakes

  • Interpreting a successful Check result as proof that there are no geometric issues.

  • Adding unnecessary small lines to join curve segments.

  • Failing to record the running command and active options when a faulty-object warning appears.

  • Ignoring naked edges or other mesh defects when preparing for STL/SLA.

Impact on architecture and visualization workflows

Architecture, interior design, and visualization teams can use these checks to spot faulty geometry before it moves on to later stages. It may be useful to add checks for imported NURBS objects and meshes prepared for STL/SLA to the checklist. The documentation does not specify hardware requirements or licensing conditions, so no recommendation can be made on those points. The command names and menu paths are based on the usage shown in the Rhino 8 documentation.

Sources

2 sources
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/check.htm
Summary
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/selbadobjects.htm
Summary

Source texts are not republished; short quotes are marked, everything else is our own summary and commentary.

3dsınıfı’s take
3dEditor’s assessment

For architecture and visualization offices in Turkey, the value of this workflow is that it makes it possible to inspect faulty objects more selectively before delivery or production. Check and SelBadObjects can help organize the process; however, a clean Check report does not prove that all geometric defects are absent.

Adding these steps to an office model-checking checklist and noting the command and active options when a warning appears can make it easier to investigate issues. The documentation does not specify any special hardware or licensing conditions. The most important points are to avoid small edges from the outset, not to expect the same repair result for every file, and not to leave mesh checks until printing preparation.

Frequently asked questions

How do you find faulty objects in Rhino?

Run the `Check` command on selected objects to get a data structure report. `SelBadObjects` selects objects that fail Check.

Does a clean result from Rhino’s Check command mean the model is flawless?

No. The official documentation states that Check does not detect every issue, and that some conditions, such as surfaces that fold back on themselves or self-intersect, can be difficult to detect automatically.

Which commands can be used to check a mesh before STL/SLA printing?

`MeshRepair` can be useful. Depending on the type of defect, the documentation also lists `ShowEdges`, `CullDegenerateMeshFaces`, `ExtractDuplicateMeshFaces`, and other mesh tools.

Comments and the forum are in Turkish.Join the discussion
+

Related news