diff -r 5de9623d6a50 poly2tri/common/shapes.h --- a/poly2tri/common/shapes.h Mon Aug 08 22:26:41 2011 -0400 +++ b/poly2tri/common/shapes.h Tue Jan 17 02:36:52 2012 +0100 @@ -35,6 +35,7 @@ #include #include +#include #include #include @@ -136,7 +137,9 @@ p = &p2; } else if (p1.x == p2.x) { // Repeat points - assert(false); + // ASSIMP_CHANGE (aramis_acg) + throw std::runtime_error("repeat points"); + //assert(false); } } diff -r 5de9623d6a50 poly2tri/sweep/sweep.cc --- a/poly2tri/sweep/sweep.cc Mon Aug 08 22:26:41 2011 -0400 +++ b/poly2tri/sweep/sweep.cc Tue Jan 17 02:36:52 2012 +0100 @@ -113,6 +113,8 @@ Point* p1 = triangle->PointCCW(point); Orientation o1 = Orient2d(eq, *p1, ep); if (o1 == COLLINEAR) { + // ASSIMP_CHANGE (aramis_acg) + throw std::runtime_error("EdgeEvent - collinear points not supported"); if( triangle->Contains(&eq, p1)) { triangle->MarkConstrainedEdge(&eq, p1 ); // We are modifying the constraint maybe it would be better to @@ -121,8 +123,8 @@ triangle = &triangle->NeighborAcross(point); EdgeEvent( tcx, ep, *p1, triangle, *p1 ); } else { + // ASSIMP_CHANGE (aramis_acg) std::runtime_error("EdgeEvent - collinear points not supported"); - assert(0); } return; } @@ -130,6 +132,9 @@ Point* p2 = triangle->PointCW(point); Orientation o2 = Orient2d(eq, *p2, ep); if (o2 == COLLINEAR) { + // ASSIMP_CHANGE (aramis_acg) + throw std::runtime_error("EdgeEvent - collinear points not supported"); + if( triangle->Contains(&eq, p2)) { triangle->MarkConstrainedEdge(&eq, p2 ); // We are modifying the constraint maybe it would be better to @@ -138,8 +143,8 @@ triangle = &triangle->NeighborAcross(point); EdgeEvent( tcx, ep, *p2, triangle, *p2 ); } else { - std::runtime_error("EdgeEvent - collinear points not supported"); - assert(0); + // ASSIMP_CHANGE (aramis_acg) + throw std::runtime_error("EdgeEvent - collinear points not supported"); } return; } @@ -712,7 +717,8 @@ return *ot.PointCW(op); } else{ //throw new RuntimeException("[Unsupported] Opposing point on constrained edge"); - assert(0); + // ASSIMP_CHANGE (aramis_acg) + throw std::runtime_error("[Unsupported] Opposing point on constrained edge"); } }