BrushSplitType Winding::classifyPlane(const Plane3& plane) const { BrushSplitType split; for (const_iterator i = begin(); i != end(); ++i) { ++split.counts[classifyDistance(plane.distanceToPoint(i->vertex), ON_EPSILON)]; } return split; }
bool Winding::testPlane(const Plane3& plane, bool flipped) const { const int test = (flipped) ? ePlaneBack : ePlaneFront; for (const_iterator i = begin(); i != end(); ++i) { if (test == classifyDistance(plane.distanceToPoint(i->vertex), ON_EPSILON)) { return false; } } return true; }