diff options
-rw-r--r-- | src/dxftess-cgal.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/dxftess-cgal.cc b/src/dxftess-cgal.cc index 9cd3bfd..506b34a 100644 --- a/src/dxftess-cgal.cc +++ b/src/dxftess-cgal.cc @@ -109,6 +109,7 @@ void dxf_tesselate(PolySet *ps, DxfData &dxf, double rot, bool up, bool /* do_tr Grid2d<point_info_t> point_info(GRID_FINE); boost::unordered_map<edge_t,int> edge_to_triangle; boost::unordered_map<edge_t,int> edge_to_path; + int duplicate_vertices = 0; CGAL::Failure_behaviour old_behaviour = CGAL::set_error_behaviour(CGAL::THROW_EXCEPTION); try { @@ -131,7 +132,7 @@ void dxf_tesselate(PolySet *ps, DxfData &dxf, double rot, bool up, bool /* do_tr // ..maybe it would be better to assert here. But this would // break compatibility with the glu tesselator that handled such // cases just fine. - PRINT( "WARNING: Duplicate vertex found during Tessellation. Render may be incorrect." ); + duplicate_vertices++; continue; } @@ -165,6 +166,9 @@ void dxf_tesselate(PolySet *ps, DxfData &dxf, double rot, bool up, bool /* do_tr } } + if ( duplicate_vertices > 0 ) + PRINTB( "WARNING: duplicate vertices and/or intersecting lines found during DXF Tessellation. Render may be incorrect.", duplicate_vertices ); + } catch (CGAL::Assertion_exception e) { PRINTB("CGAL error in dxf_tesselate(): %s", e.what()); |