API
The pseudo type :: 2 indicate Tuple{Float64,Float64} or any type T such that ExactPredicates.coord(::T) or Base.Tuple(::T) outputs a Tuple{Float64,Float64}. Similaly, :: 3 indicates Tuple{Float64,Float64,Float64} or any type convertible to it coord or Tuple.
Planar predicates
ExactPredicates.closest — Method.closest(p :: 2, q :: 2, a :: 2) -> Int- Return 1 if
ais closer topthan toq. - Return –1 if
ais closer toqthan top. - Return 0 is
ais equaly close to both.
ExactPredicates.incircle — Method.incircle(a :: 2, b :: 2, c :: 2, p :: 2) -> IntAssume that a, b and c define a counterclockwise triangle.
- Return 1 if
pis strictly inside the circumcircle of this triangle. - Return –1 if
pis outside. - Return 0 if
pis on the circle.
If the triangle is oriented clockwise, the signs are reversed. If a, b and c are collinear, this degenerate to an orientation test.
If two of the four arguments are equal, return 0.
ExactPredicates.orient — Method.orient(p :: 2, q :: 2, r :: 2) -> Int- Return 1 if
ris on the left of the oriented line defined bypandq. - Return –1 if
ris on the right. - Return 0 if
ris on the line or ifp == q.
Spatial predicates
ExactPredicates.closest — Method.closest(p :: 3, q :: 3, a :: 3) -> IntReturn 1 if a is closer to p than to q. Return –1 if a is closer to q than to p. Return 0 is a is equaly close to both.
ExactPredicates.insphere — Method.insphere(p :: 3, q :: 3, r :: 3, s :: 3, a :: 3)- Return 1 if
ais inside the circumscribed sphere defined by the four pointsp,q,rands. - Return –1 if
ais outside. - Return 0 is
alies on the sphere or if the four points are coplanar.
ExactPredicates.orient — Method.orient(p :: 3, q :: 3, r :: 3, a :: 3) -> IntConsider the oriented plane on which the triangle pqr is positively oriented.
- Return 1 if
ais below this plane. - Return –1 if
ais above this plane. - Return 0 if
alies on this plane.