Triangle t = find(startTriangle, p); if (t.isHalfplane()) startTriangle = extendOutside(t, p); else startTriangle = extendInside(t, p); startTriangle = extendOutside(firstT.getAbTriangle(), p); allCollinear = false; break; case Point.RIGHT: startTriangle = extendOutside(firstT, p); allCollinear = false; break;
private Triangle treatDegeneracyInside(Triangle t, Point p) { if (t.getAbTriangle().isHalfplane() && p.pointLineTest(t.getB(), t.getA()) == Point.ONSEGMENT) return extendOutside(t.getAbTriangle(), p); if (t.getBcTriangle().isHalfplane() && p.pointLineTest(t.getC(), t.getB()) == Point.ONSEGMENT) return extendOutside(t.getBcTriangle(), p); if (t.getCaTriangle().isHalfplane() && p.pointLineTest(t.getA(), t.getC()) == Point.ONSEGMENT) return extendOutside(t.getCaTriangle(), p); return null; }