Skip to main content

check_tessellation

Function check_tessellation 

Source
pub fn check_tessellation(
    model: &Model,
    shape: &Shape,
    deflection: Deflection,
    tol: Tolerances,
) -> OgeomResult<Diagnosis>
Expand description

Check that a shape’s tessellation agrees with its topology.

Separate from check because it needs a deflection, and because it asks a different question: not “is this shape well formed” but “do its two descriptions of itself agree”. A shell whose edges are all used twice is closed as far as the topology knows. If the mesh built from it still has a boundary, then some face’s pcurves do not cover the region its edges claim to bound, and the topology cannot see that, because the defect is entirely in parameter space.

That failure is worth its own function because it is invisible to every other check. Face counts look right, the shell closes, each face triangulates without error, and the solid still has a slit down it. The first thing to notice is usually a volume that is quietly wrong.

Reports the position of the unshared edges, not just their number: where the mesh comes apart is the whole diagnosis, and a count sends you looking.

§Errors

As ogeom_mesh::triangulate().