Introduce CGAL::Default for the TDS of constrained triangulations

This commit is contained in:
Andreas Fabri 2016-03-23 10:27:39 +01:00
parent af4d79f0c9
commit 47090906f0
5 changed files with 27 additions and 28 deletions

View File

@ -6,11 +6,8 @@
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Triangulation_vertex_base_2<K> Vb;
typedef CGAL::Constrained_triangulation_face_base_2<K> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb,Fb> TDS;
typedef CGAL::Exact_predicates_tag Itag;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, TDS, Itag> CDT;
typedef CGAL::Constrained_Delaunay_triangulation_2<K, CGAL::Default, Itag> CDT;
typedef CDT::Point Point;
int

View File

@ -8,11 +8,8 @@
typedef CGAL::Exact_predicates_exact_constructions_kernel K;
typedef CGAL::Triangulation_vertex_base_2<K> Vb;
typedef CGAL::Constrained_triangulation_face_base_2<K> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb,Fb> TDS;
typedef CGAL::Exact_intersections_tag Itag;
typedef CGAL::Constrained_Delaunay_triangulation_2<K,TDS,Itag> CDT;
typedef CGAL::Constrained_Delaunay_triangulation_2<K,CGAL::Default,Itag> CDT;
typedef CGAL::Constrained_triangulation_plus_2<CDT> CDTplus;
typedef CDTplus::Point Point;

View File

@ -5,18 +5,15 @@
#include <vector>
typedef CGAL::Exact_predicates_exact_constructions_kernel K;
typedef CGAL::Polygon_2<K> Polygon_2;
typedef CGAL::Triangulation_vertex_base_2<K> Vb;
typedef CGAL::Constrained_triangulation_face_base_2<K> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb,Fb> TDS;
typedef CGAL::Exact_intersections_tag Itag;
typedef CGAL::Constrained_Delaunay_triangulation_2<K,TDS, Itag> CDT;
typedef CGAL::Constrained_triangulation_plus_2<CDT> CDTP;
typedef CGAL::Exact_predicates_exact_constructions_kernel K;
typedef CGAL::Polygon_2<K> Polygon_2;
typedef CGAL::Exact_intersections_tag Itag;
typedef CGAL::Constrained_Delaunay_triangulation_2<K,CGAL::Default, Itag> CDT;
typedef CGAL::Constrained_triangulation_plus_2<CDT> CDTP;
typedef CDTP::Point Point;
typedef CDTP::Constraint_id Cid;
typedef CDTP::Vertex_handle Vertex_handle;
typedef CDTP::Point Point;
typedef CDTP::Constraint_id Cid;
typedef CDTP::Vertex_handle Vertex_handle;
void
print(const CDTP& cdtp, Cid cid)

View File

@ -56,15 +56,16 @@ namespace CGAL {
template <class Gt,
class Tds = Triangulation_data_structure_2 <
class Tds_ = Triangulation_data_structure_2 <
Triangulation_vertex_base_2<Gt>,
Constrained_triangulation_face_base_2<Gt> >,
class Itag = No_intersection_tag >
class Constrained_Delaunay_triangulation_2
: public Constrained_triangulation_2<Gt, Tds, Itag>
: public Constrained_triangulation_2<Gt, Tds_, Itag>
{
public:
typedef Constrained_triangulation_2<Gt,Tds,Itag> Ctr;
typedef Constrained_triangulation_2<Gt,Tds_,Itag> Ctr;
typedef typename Ctr::Tds Tds;
typedef Constrained_Delaunay_triangulation_2<Gt,Tds,Itag> CDt;
typedef typename Ctr::Geom_traits Geom_traits;
typedef typename Ctr::Intersection_tag Intersection_tag;

View File

@ -28,7 +28,7 @@
#include <CGAL/Triangulation_2.h>
#include <CGAL/Constrained_triangulation_face_base_2.h>
#include <CGAL/iterator.h>
#include <CGAL/Default.h>
#include <CGAL/intersections.h>
#include <CGAL/squared_distance_2.h>
@ -40,16 +40,23 @@ struct Exact_predicates_tag{}; // to be used with filtered exact number
template < class Gt,
class Tds = Triangulation_data_structure_2 <
Triangulation_vertex_base_2<Gt>,
Constrained_triangulation_face_base_2<Gt> >,
class Tds_ = Triangulation_data_structure_2 <
Triangulation_vertex_base_2<Gt>,
Constrained_triangulation_face_base_2<Gt> >,
class Itag = No_intersection_tag >
class Constrained_triangulation_2 : public Triangulation_2<Gt,Tds>
class Constrained_triangulation_2
: public Triangulation_2<Gt,typename Default::Get< Tds_,
Triangulation_data_structure_2 <
Triangulation_vertex_base_2<Gt>,
Constrained_triangulation_face_base_2<Gt> > >::type >
{
public:
typedef typename Default::Get<Tds_, Triangulation_data_structure_2 <
Triangulation_vertex_base_2<Gt>,
Constrained_triangulation_face_base_2<Gt> > >::type Tds;
typedef Triangulation_2<Gt,Tds> Triangulation;
typedef Constrained_triangulation_2<Gt,Tds,Itag> Constrained_triangulation;
typedef Constrained_triangulation_2<Gt,Tds_,Itag> Constrained_triangulation;
typedef typename Triangulation::Edge Edge;
typedef typename Triangulation::Vertex Vertex;