Skip to main content

incircle

pub fn incircle(a: Point2, b: Point2, c: Point2, d: Point2) -> Sign
Expand description

The 2-D in-circle predicate: side of d w.r.t. the oriented circle through a, b, c.

Returns Sign::Positive if d is inside the oriented circle (when a, b, c are CCW), Sign::Zero if d is on the circle, Sign::Negative if outside. The sense is reversed when a, b, c are clockwise.

This is the public ladder entry point — it escalates from filtered to compensated to exact as needed, never returning an uncertain sign.