From ff5ea64548cc283c29fe9e8add6c894c5a9f54a1 Mon Sep 17 00:00:00 2001 From: Francisc Date: Fri, 23 Aug 2013 00:02:42 +0300 Subject: [PATCH] corrected bug --- .../CGAL/Simple_polygon_visibility_2.h | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/Visibility_2/include/CGAL/Simple_polygon_visibility_2.h b/Visibility_2/include/CGAL/Simple_polygon_visibility_2.h index aca52714d0c..6af41092962 100644 --- a/Visibility_2/include/CGAL/Simple_polygon_visibility_2.h +++ b/Visibility_2/include/CGAL/Simple_polygon_visibility_2.h @@ -157,6 +157,11 @@ public: else { vertices.push_back(vertices[0]); } + std::cout << "VERTICES\n"; + for(unsigned int i = 0 ; i < vertices.size() ; i++) { + std::cout << vertices[i] << std::endl; + } + std::cout << "END VERTICES\n"; visibility_region_impl(q); @@ -192,6 +197,12 @@ public: } } + std::cout << "POINTS\n"; + for (unsigned int i = 0 ; i < points.size() ; i++) { + std::cout << points[i]<(geom_traits, s1, s2); if (const Point_2 *ipoint = CGAL::object_cast(&result)) { + std::cout << "ipt = " << *ipoint << std::endl; if (i < vertices.size()-1) { + upcase = LEFT; if (*ipoint != s_j_prev) { s.push(*ipoint); @@ -491,6 +514,10 @@ private: i++; } else { + if (query_pt_is_vertex && *ipoint != s_j_prev) { + s.push(*ipoint); + } + std::cout << "bla\n"; upcase = FINISH; } } @@ -526,7 +553,7 @@ private: void scana(int &i, Point_2 &w, const Point_2 &query_pt) { // Scan v_i, v_i+1, ..., v_n for the first edge to intersect (z, s_t) int k = i; - + std::cout << "scana w = " << w << std::endl; while (k+1 < vertices.size()-1) { if (CGAL::Visibility_2::Orientation_2(geom_traits, @@ -540,6 +567,7 @@ private: (geom_traits, s1, s2); if (const Point_2 *ipoint = CGAL::object_cast(&result)) { s.push(*ipoint); + std::cout << "scana ipt = " << *ipoint << std::endl; s.push(vertices[k+1]); w = vertices[k+1]; i = k+1;