Mesh Repair Workbench
Open a local triangular STL or OBJ surface. The workbench identifies boundary edges, orientation conflicts and nonmanifold edges or vertices with face IDs and coordinates. It can consistently orient one connected shell and cap at most four simple, planar, strictly convex holes of 3–12 edges. The repaired mesh is a new download after parsing it again; an ambiguous case is refused without changing the source. Topological closure is not a self-intersection, dimensional accuracy or 3D-printability certificate.
Key features
- Strict local binary/ASCII STL and triangular OBJ parsing with file, face and coordinate limits
- Exact coordinate welding by default and optional bounded near-weld tolerance
- Boundary, reversed-edge, duplicate-face and nonmanifold edge/vertex diagnostics with locations
- Conservative orientation repair and small planar convex hole capping with refusal of ambiguous cases
- Topological closure and signed-volume check, followed by reimport validation of exported geometry
- Download geometry-only repaired OBJ, verified binary STL when possible, and machine-readable change log
How to use
- Open a local .stl or .obj file under 2 MiB or load the tetrahedron hole example.
- Leave welding at exact matching unless your source coordinate units justify a small nonzero tolerance; inspect any near-weld warning.
- Review issue counts, projected edge preview, face IDs and coordinate locations before attempting repair.
- Run conservative repair. Nonmanifold, disconnected, nonplanar, concave or oversized holes are refused rather than silently rebuilt.
- Inspect the new shell and change counts, then download verified OBJ, available STL and a JSON change report; retain the original separately.
Use cases
- Close a single missing triangular face on an otherwise manifold STL shell
- Correct one reversed triangle in a closed OBJ surface
- Find the coordinates of a nonmanifold edge before manual modeling work
- Check whether a small exported triangular shell is topologically closed before a fuller CAD/printing check
Frequently asked questions
What file formats are accepted?
Binary or ASCII STL and UTF-8 OBJ with positive-index triangular f records and ordinary geometric v records. OBJ texture coordinates, normals, materials and groups, plus STL facet normals or optional attributes, are ignored in the geometry-only output. Quads, negative OBJ indices, curved surfaces, CAD solids and color preservation are unsupported.
Which holes can be filled automatically?
Only one connected orientable manifold shell with at most four simple boundary loops. Each loop must have 3–12 vertices and be sufficiently planar and strictly convex. The tool adds a triangle fan with reversed boundary direction. Concave, nonplanar, self-touching, nonmanifold or ambiguous boundaries are refused; sophisticated surface reconstruction is outside scope.
What does 'topologically closed' prove?
Every edge has two incident faces, vertex fans are manifold, orientations agree and signed volume is nonzero for this mesh. It does not test triangle self-intersections, nested shells, thickness, surface quality, real-world units, printability or physical safety.
Does tolerance alter geometry?
Exact coordinate equality is the default. Optional 10⁻⁶, 10⁻⁴ or 10⁻³ is an absolute distance in the input's own coordinate units. Near vertices may merge to the first representative; a collapsed triangle is rejected. Use zero unless you know the source scale and inspect the change count.
Why was repair refused?
A shared edge with more than two faces, a pinched vertex, duplicate face, disconnected component, orientation contradiction, difficult hole or zero-volume closed result is ambiguous. The original stays loaded and no repaired file is offered. Use a full mesh editor for a manual decision.
Is my model uploaded?
No. Files are read in browser memory, diagnostics and repair run locally, and files are created only when you select a download.
Privacy
The selected mesh remains in this browser tab. No model bytes are uploaded by the tool; generated OBJ, STL and report files are local downloads.
Comments & questions