Skip to main content

split_pinched_vertices

Function split_pinched_vertices 

Source
pub fn split_pinched_vertices(solid: &mut BrepSolid) -> Result<usize, String>
Expand description

Split PINCHED vertices — points where two (or more) umbrella fans of faces meet at a single vertex record. Local manifold checks (edge use counts, loop closure, orientation) cannot see a pinch; it surfaces only as an odd Euler characteristic. The link of a manifold boundary vertex is a single edge-connected fan: union incident edges through every loop CORNER at the vertex (consecutive coedges meeting there inside one face); more than one component means distinct fans sharing the record — give each extra fan its own vertex at the same point and reassign that fan’s edge endpoints. Geometry is untouched; only identity is repaired.