Function winding_number

Source
pub fn winding_number(mesh: &TriMesh, point: Point3) -> Option<i32>
Expand description

Signed number of times the surface wraps point.

Some(0) outside, Some(1) inside an outward-oriented closed shell, Some(-1) inside an inside-out one. None when the query ray meets an edge or vertex exactly: that is a tie the predicate refuses to break, and the caller can retry with a different direction rather than receive a coin-flip.

A point lying exactly ON the surface also yields None, because it is neither in nor out and reporting either would be a lie.