diff options
Diffstat (limited to 'src/cgaladv_minkowski2.cc')
-rw-r--r-- | src/cgaladv_minkowski2.cc | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/cgaladv_minkowski2.cc b/src/cgaladv_minkowski2.cc index fb8dd4b..8d0bf62 100644 --- a/src/cgaladv_minkowski2.cc +++ b/src/cgaladv_minkowski2.cc @@ -31,14 +31,11 @@ #include "grid.h" #include "cgal.h" -#include <CGAL/Exact_predicates_exact_constructions_kernel.h> + #include <CGAL/minkowski_sum_2.h> extern CGAL_Nef_polyhedron2 minkowski2(CGAL_Nef_polyhedron2 a, CGAL_Nef_polyhedron2 b); - -struct K2 : public CGAL::Exact_predicates_exact_constructions_kernel {}; -typedef CGAL::Polygon_2<K2> Poly2; -typedef CGAL::Polygon_with_holes_2<K2> Poly2h; +extern CGAL_Poly2 nef2p2(CGAL_Nef_polyhedron2 p); //----------------------------------------------------------------------------- // Pretty-print a CGAL polygon. @@ -78,9 +75,9 @@ void print_polygon_with_holes (const CGAL::Polygon_with_holes_2<Kernel, Containe return; } -static Poly2 nef2p2(CGAL_Nef_polyhedron2 p) +CGAL_Poly2 nef2p2(CGAL_Nef_polyhedron2 p) { - std::list<K2::Point_2> points; + std::list<CGAL_ExactKernel2::Point_2> points; Grid2d<int> grid(GRID_COARSE); typedef CGAL_Nef_polyhedron2::Explorer Explorer; @@ -105,15 +102,14 @@ static Poly2 nef2p2(CGAL_Nef_polyhedron2 p) Explorer::Point ep = E.point(E.target(fcirc)); double x = to_double(ep.x()), y = to_double(ep.y()); grid.align(x, y); - points.push_back(K2::Point_2(x, y)); + points.push_back(CGAL_ExactKernel2::Point_2(x, y)); } } } - return Poly2(points.begin(), points.end()); + return CGAL_Poly2(points.begin(), points.end()); } - -static CGAL_Nef_polyhedron2 p2nef2(Poly2 p2) { +static CGAL_Nef_polyhedron2 p2nef2(CGAL_Poly2 p2) { std::list<CGAL_Nef_polyhedron2::Point> points; for (size_t j = 0; j < p2.size(); j++) { double x = to_double(p2[j].x()); @@ -126,7 +122,7 @@ static CGAL_Nef_polyhedron2 p2nef2(Poly2 p2) { CGAL_Nef_polyhedron2 minkowski2(CGAL_Nef_polyhedron2 a, CGAL_Nef_polyhedron2 b) { - Poly2 ap = nef2p2(a), bp = nef2p2(b); + CGAL_Poly2 ap = nef2p2(a), bp = nef2p2(b); if (ap.size() == 0) { PRINT("WARNING: minkowski() could not get any points from object 1!"); @@ -135,7 +131,7 @@ CGAL_Nef_polyhedron2 minkowski2(CGAL_Nef_polyhedron2 a, CGAL_Nef_polyhedron2 b) PRINT("WARNING: minkowski() could not get any points from object 2!"); return CGAL_Nef_polyhedron2(); } else { - Poly2h x = minkowski_sum_2(ap, bp); + CGAL_Poly2h x = minkowski_sum_2(ap, bp); // Make a CGAL_Nef_polyhedron2 out of just the boundary for starters return p2nef2(x.outer_boundary()); |