Find non-manifold edges in an STL

A non-manifold edge is shared by more than two triangles in this checker. That creates a junction where a surface no longer has the ordinary two-face neighborhood. The problem may come from overlapping faces, joined shells, or geometry that was never intended to describe one solid.

Reproduce a three-face junction

The supplied duplicate-face sample starts with a closed tetrahedron and adds one copy of a face. Its three edges now each belong to three triangles. The checker reports three non-manifold edges. Select that finding to mark their locations on the model.

SampleTrianglesNon-manifold edges
Original tetrahedron40
One duplicated face53

An edge count identifies a specific topology problem. It cannot decide whether one face should be removed, whether several bodies should stay separate, or whether an intersection needs a different construction.

Inspect the surrounding surfaces

  1. Open the sample or your STL in the mesh checker.
  2. Select Non-manifold edges and inspect the marked junction from several views.
  3. Compare that region with the intended source geometry.
  4. Make the necessary modeling decision in the source application, then check the exported mesh again.

Reversing triangles cannot decide which branch of a three-face junction belongs to the intended surface. Removing small components or merging near vertices would also be a geometric decision. This checker locates the problem without making those changes.

A zero count has a limited meaning

This check matches stored positions exactly; it does not weld nearby vertices. It counts edge incidence, not every possible kind of non-manifold condition. It also does not test self-intersection, wall thickness, or manufacturing suitability. Two closed shells may pass the edge checks while intersecting each other. Keep the report's unchecked properties separate from the findings it actually measured.

Locate mesh defects

Try these files

These samples were created by this project and released under CC0. They contain no visitor files. Sizes and SHA-256 hashes identify the exact bytes measured in this experiment.

See the measurement method, exact files, and reproduction details

Related questions