Mesh large hole fill

I have a large object mesh that was created using photogrammetry. The bottom was hidden so I’m left with a big hole that has many edges. My goal is to basically fill in the large hole with a flat bottom. I started by using SelNakedMeshEdgePt to get the edge points, scaled them down, and used SetPt to set a consistent Z height. However, using FillMeshHole still doesn’t create a nice smooth flat bottom. I’ve exaggerated the Z depth in the images to illustrate the point.
What am I missing? Do I need to smooth or reduce the edge count in order to create a clean bottom? Is there another step/tool that I should use first?

BaseHole1 BaseHole2

Here’s what I do in these cases:

  1. Select all the edge points - selNakedMeshEdgePt and then deselect not needed ones, is one way, DupDorder and then SelVolumePipe also works.
  2. Expand the point selection with a few doses of SelConnected. Keep the selection on the flattish part.
  3. ExtractPt
  4. Hide the mesh
  5. Patch the points and trim with the border curve.

  1. Mesh the patch.
  2. Join the new and existing meshes.



1 Like

Thanks a bunch. It worked quite well. I did add a step to flatten the bottom (using Set XYZ transform) after a couple of “SelConnected” steps just to create a flat base on the object. I changed some of the values in MatchMeshEdge to reduce the number of bad edges. However, I still had to manually clean up a few (a very workable 6 non-manifold edges). I’m guessing I could have saved that effort if I knew in step 1 which were the right points to delete. In the end I have a watertight mesh now suitable for further processing.