Skip to main content

Fill Holes

The Fill Holes tool automatically detects and fills holes (open boundaries) in surface meshes, creating watertight geometry suitable for 3D printing, simulation, and other applications that require closed surfaces.

Medical Disclaimer

This tool is provided for research and educational purposes only. Any clinical or diagnostic use requires proper validation in accordance with applicable regulations.

Overview​

Holes in surface meshes are open boundaries where edges are connected to only one triangle instead of two. Holes commonly occur from:

A mesh patch with a hole whose boundary edges belong to only one triangle, and the same patch after Fill Holes with new triangles closing the boundary

  • Cutting or clipping operations
  • Mesh editing that removes triangles
  • Incomplete segmentation
  • Import of non-watertight geometry

The tool works on the active surface object and offers two independent groups: Fill all holes decides what gets filled, and Identify holes shows you what is there before and after.

Interface​

Fill all holes​

Fill all holes is a checkable group, and it is on by default.

StateBehaviour
On (default)Every hole is filled, whatever its size. The Maximum hole size (mm) field is greyed out, because no limit applies
OffOnly holes up to Maximum hole size (mm) are filled; anything larger is left open
ParameterDescriptionRangeDefault
Maximum hole size (mm)Largest hole diameter that will be filled. Available only while Fill all holes is off0 to 9999999.990
The size limit starts at 0

The field starts at 0, which fills nothing. Turning Fill all holes off without raising it leaves the surface unchanged. Read the largest hole diameter from Identify holes first, then set the limit between the openings you want closed and the ones you want kept.

The value is a diameter, matching the diameters reported by Identify holes, so a number read from that table can be typed straight in. Use the limit to close small defects while leaving genuine openings, such as pipe ends or a hollowed model's drain hole, untouched.

Identify holes​

Identify holes is a checkable group, off by default. Turning it on finds the open boundaries of the active surface, highlights them in the 3D view, and fills in a two-column table:

RowDescription
Surface nameThe surface the results belong to
Number of holesHow many open boundaries were found
Smallest hole diameter (mm)Diameter of the smallest one
Largest hole diameter (mm)Diameter of the largest one

This is a summary of the surface, not a per-hole list: holes cannot be picked individually, and filling is always driven by Fill all holes and the size limit. Turning the group off hides the highlighting again.

Check the result without reopening the tool

The table is recalculated automatically after every Apply, so leaving Identify holes on shows immediately how many holes remain. Number of holes reaching 0 is the confirmation that the surface is now closed.

Actions​

ButtonDescription
ApplyFill the holes of the active surface, according to the settings above

Apply modifies the active surface in place and can be undone with Ctrl+Z. It reports a warning and does nothing if no surface is active, or if the active surface is too small to have a fillable boundary.

Hole Filling Algorithms​

The Fill Holes tool uses algorithms optimized for different hole shapes:

Simple Holes​

Small, roughly circular holes are filled with a minimal number of triangles, creating a planar or slightly curved cap.

Complex Holes​

Larger or irregularly shaped holes are filled using algorithms that:

  • Respect the local surface curvature
  • Create well-shaped triangles (good aspect ratios)
  • Blend smoothly with the surrounding surface

Typical Workflows​

Fill All Holes Automatically​

For surfaces with many small holes:

  1. Open the Fill Holes tool
  2. Enable Fill all holes mode
  3. Set an appropriate Maximum hole size
  4. Click Apply

All holes smaller than the threshold are filled.

Selective Hole Filling​

To fill only specific holes:

  1. Open the Fill Holes tool
  2. Enable Identify holes mode
  3. Review the table of detected holes
  4. Click on holes in the 3D view or table to select them
  5. Check the Selected column for holes you want to fill
  6. Click Apply

Only the selected holes are filled.

Preparing for 3D Printing​

To ensure a surface is watertight:

  1. Run Diagnostics and Fixes to identify all issues
  2. Open Fill Holes and identify all holes
  3. Review hole sizes—very large holes may indicate intentional openings
  4. Set Maximum hole size appropriately
  5. Fill holes
  6. Re-run diagnostics to verify the surface is closed

After Cutting/Clipping​

After using Cut or Clip tools:

  1. Open Fill Holes
  2. Enable Identify holes to see the new openings
  3. Fill holes as needed
  4. Note: For clean planar caps, use Clip with Closed clip option instead

Best Practices​

  1. Use Identify mode first: Before filling all holes automatically, use Identify mode to understand what openings exist and their sizes.

  2. Set appropriate thresholds: Use the Maximum hole size parameter to avoid filling intentional openings like pipe ends or cavity entrances.

  3. Check the results: After filling, verify that:

    • Filled regions have appropriate geometry
    • No unintended openings were filled
    • Surface remains manifold
  4. Consider alternatives: For planar cuts, using Clip with Closed clip creates cleaner caps than hole filling.

  5. Run diagnostics after: Use Diagnostics and Fixes to verify the surface is now closed and manifold.

  6. Smooth if needed: Large filled regions may benefit from Smooth to blend better with surrounding geometry.

Hole Size Considerations​

The hole diameter is calculated as the diameter of a circle with equivalent perimeter length. This is an approximation—irregular holes may be larger or smaller than their calculated diameter suggests.

Hole SizeTypical SourceRecommendation
< 1 mmMesh artifacts, numerical precision issuesFill automatically
1-10 mmSmall defects, editing artifactsReview and fill
10-50 mmCutting operations, significant defectsEvaluate carefully
> 50 mmIntentional openings, major cutsUsually leave open or use Clip

Troubleshooting​

Holes Not Detected​

If holes aren't appearing in the table:

  • Ensure the surface has actual open boundaries
  • Check that you've selected the correct surface
  • Run Diagnostics and Fixes to verify hole count

Poor Fill Quality​

If filled regions look incorrect:

  • Large, complex holes may not fill well—consider using Voxel Remesh instead
  • Very elongated holes may need manual triangle editing with Editor
  • Apply Smooth to improve the transition

Too Many Holes to Fill Individually​

If there are many small holes:

  • Use Fill all holes mode with an appropriate maximum size
  • Consider using Voxel Remesh which closes holes during processing
  • Check if the source data or segmentation can be improved

See Also​

  • Diagnostics and Fixes - Comprehensive hole detection and mesh repair
  • Clip - Create clean planar cuts with caps
  • Cut - Remove portions of surfaces
  • Editor - Manual triangle editing for complex holes
  • Voxel Remesh - Alternative approach that closes holes during remeshing