Skip to main content

loops_contain

Function loops_contain 

Source
pub fn loops_contain<S: Scalar>(
    model: &Model<S>,
    surface: &NurbSurface3D<S>,
    coedges: &[CoedgeId],
    query: Vector2<S>,
    max_nodes: usize,
    epsilon: S,
    seed: u64,
) -> GeopResult<PointClassification>
Expand description

The same classification as face_contains, but against an explicit set of loops rather than all of a face’s.

Exists because “inside this face” and “inside this face’s outer loop” are different questions, and validation needs the second: a hole has to lie within the outer boundary, and asking face_contains would only ever answer OnCoedge for a point taken from the hole itself. Splitting the ray casting out here keeps one implementation of it rather than a second copy that could drift.