I have a large surface of non-manifold geometry that I would like to repair. I have tried deleting the faces and then using fill. This roughly works but generates new edges and recreates a lot of the original problems.

Is there any way to only generate faces where all the edges are already there and to not create a face if the edge has already been used for two faces?

I am hoping it could recreate most of the surface and I can manually fix what hasn't worked.

This is the problem. From what looks like a fairly good set of triangles, using fill produces the following mesh. Lots of missing triangles. Some strange added edges added on the cliff face and lots of edges sharing multiple faces. I've used merge by distance to try and fix it any vertex troubles but it doesn't work. Decimate recreates the on-manifold geometry. Remesh loses a lot of the original data and creates holes.

Ruined mesh

Back to the original mesh, it looks like some triangles have two faces. Z-fighting

  • 1
    $\begingroup$ Hello and welcome :). Please add some images to your question, for those of us with bad imagination. $\endgroup$ Mar 2 '20 at 18:30
  • $\begingroup$ Thought it's not an answer to my question, I managed to fix this using MeshLab. Export mesh from Blender > Delete faces in MeshLab so only points remain > Compute Normals for Point Sets > Screened Poission Surface Distribution $\endgroup$ Mar 2 '20 at 22:10
  • $\begingroup$ So you want a script that searched for edges connected into triangles, but without a face inside (and then create a face there) $\endgroup$ May 27 at 15:39
  • $\begingroup$ @MarkusvonBroady I think that's what I wanted a year ago, but I've moved on now. $\endgroup$ May 28 at 18:24

You can use the Fill Holes command for this.

  1. In Edit Mode, select your mesh (Select > All)
  2. Go Mesh > Clean Up > Fill Holes
  3. Done

enter image description here


Don't know if it helps, but ALT+double-clicking an edge selects the whole hole:

enter image description here

  • $\begingroup$ This doesnt work in my situation because there are too many holes but thank you. $\endgroup$ Mar 2 '20 at 19:48
  • $\begingroup$ you can select all the holes from Edge mode -> Select -> Select All by Trait -> Non Manifold $\endgroup$ Mar 2 '20 at 19:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.