Nodes/atlas-camera/Atlas Planar Hole Patch ◩
ComfyUI Node

Atlas Planar Hole Patch ◩

A ComfyUI node in Atlas/06 · Patch & Repair with 12 inputs and 4 outputs.

By mikejamesvfx·Created 2 months ago·Updated about 23 hours ago· 1
Atlas Planar Hole Patch ◩
  • solve
  • hole_mask
  • solve
  • remaining_holes
  • report
  • created_islands
layer
ring_cells2
max_components64
normal_tolerance_deg25
max_plane_error_m0.15
max_hole_fraction0.050
enclosed_onlytrue
min_normal_support_fraction0.30
max_patch_edge_factor20
max_patch_depth_factor2.0
CategoryAtlas/06 · Patch & Repair

Inputs (12)

NameTypeDefaultDescription
solveATLAS_SOLVE
hole_maskoptMASKSelected relief holes to patch — usually the hole_mask output of AtlasDeriveReliefMesh or AtlasCleanPlateLayer, optionally through a scope mask. LEAVE UNWIRED to treat EVERY hole in the target layer(s) as a candidate, which is what you want for a whole-solve sweep; the enclosed_only / max_hole_fraction / max_components gates still bound what actually gets filled.
layeroptSTRINGBlank = primary relief mesh; a ProjectionSource name = that layer's relief mesh; '*' = every relief mesh (primary + all sources), chaining the solve through one pass per layer.
ring_cellsoptINT21–12How many valid grid rings around each hole supply normal and plane-fit support.
max_componentsoptINT641–1024Maximum eligible hole islands to fit, smallest first. Frame/oversize rejections do not consume this budget.
normal_tolerance_degoptFLOAT251–89Maximum boundary-normal spread. Lower is safer at corners; higher accepts rougher/curved surfaces.
max_plane_error_moptFLOAT0.150.001–10Maximum 95th-percentile residual in metres for the densest plane-position band among agreeing normals.
max_hole_fractionoptFLOAT0.0500.0001–1Largest accepted component as a fraction of relief grid cells. Keeps large sky/background gaps out.
enclosed_onlyoptBOOLEANtrueReject components touching the image frame. Recommended: frame/sky openings are not occlusion holes.
min_normal_support_fractionoptFLOAT0.300.1–1Minimum share of surrounding valid normals that must agree on one plane angle. Lower values allow one-sided facade/occlusion repairs. Agreeing normals are averaged; max_plane_error_m then checks their positional fit.
max_patch_edge_factoroptFLOAT201–100Reject a generated island when its longest triangle edge exceeds this multiple of its source-pixel span times the boundary's median metres-per-pixel. Prevents grazing camera-ray spikes at any image/camera scale.
max_patch_depth_factoroptFLOAT2.01–20Reject a patch whose nearest/farthest camera depth extends beyond this multiple of the fitted local support depth band. Catches forward and backward Z needles independently of the edge-length gate.

Outputs (4)

NameTypeDescription
solveATLAS_SOLVE
remaining_holesMASK
reportSTRING
created_islandsMASK