edgeCircumcenterSign

Returns Sign(X0, X1, Z) where Z is the circumcenter of triangle ABC. The return value is -1 if Z is to the left of edge X, and +1 if Z is to the right of edge X. The return value is zero if A == B, B == C, or C == A (exactly), and also if X0 and X1 project to identical points on the sphere (e.g., X0 == X1).

The result is determined with respect to the positions of all points as though they were projected to lie exactly on the surface of the unit sphere. Furthermore this method uses symbolic perturbations to compute a consistent non-zero result even when Z lies exactly on edge X.

REQUIRES: X0 and X1 do not project to antipodal points (e.g., X0 == -X1) (see comments in CompareEdgeDistance).

int
edgeCircumcenterSign

Meta