pub fn classify_in_solid(
model: &Model,
solid: &Shape,
point: Point,
deflection: Deflection,
tol: Tolerances,
) -> OgeomResult<Containment>Expand description
Where a point sits relative to a closed shell or solid.
Ray casting against the tessellation: a ray from the point crosses the boundary an odd number of times if and only if it started inside. Where every ray meets an edge or a vertex, the point’s winding number against the tessellation answers instead, where it is within a hundredth of zero or one.
§Errors
As triangulate(), plus
OgeomError::Construction if the boundary is
not closed (an open shell has no inside), and
OgeomError::NotDone if every ray tried hit an
edge or a vertex, where the crossing count is ambiguous, and the winding
number reads neither zero nor one.