diff --git a/Alpha_shapes_2/include/CGAL/Alpha_shape_face_base_2.h b/Alpha_shapes_2/include/CGAL/Alpha_shape_face_base_2.h index 218d5e33686..5e6785fb890 100644 --- a/Alpha_shapes_2/include/CGAL/Alpha_shape_face_base_2.h +++ b/Alpha_shapes_2/include/CGAL/Alpha_shape_face_base_2.h @@ -32,26 +32,32 @@ namespace CGAL { -template < class Gt, class Fb_ = Default,class ExactAlphaComparisonTag =Tag_false > -class Alpha_shape_face_base_2 : public Default::Get >::type +template +class Alpha_shape_face_base_2 + : public Default::Get >::type { typedef typename Default::Get >::type Fb; - typedef typename Fb::Triangulation_data_structure TDS; -public: - typedef TDS Triangulation_data_structure; - typedef typename TDS::Vertex_handle Vertex_handle; - typedef typename TDS::Face_handle Face_handle; - typedef typename internal::Alpha_nt_selector_2::Type_of_alpha Type_of_alpha; - typedef Type_of_alpha FT; - typedef Triple Interval_3; +public: + typedef typename Fb::Vertex_handle Vertex_handle; + typedef typename Fb::Face_handle Face_handle; template < typename TDS2 > struct Rebind_TDS { - typedef typename Fb::template Rebind_TDS::Other Fb2; - typedef Alpha_shape_face_base_2 Other; + typedef typename Fb::template Rebind_TDS::Other Fb2; + typedef Alpha_shape_face_base_2< + Gt, Fb2, ExactAlphaComparisonTag, Weighted_tag> Other; }; + typedef typename internal::Alpha_nt_selector_2< + Gt, ExactAlphaComparisonTag, Weighted_tag>::Type_of_alpha Type_of_alpha; + typedef Type_of_alpha NT; + + typedef Type_of_alpha FT; + typedef Triple Interval_3; private: Interval_3 vec_edge[3]; diff --git a/Alpha_shapes_2/include/CGAL/Alpha_shape_vertex_base_2.h b/Alpha_shapes_2/include/CGAL/Alpha_shape_vertex_base_2.h index b9fc610b4d5..c818aa21a58 100644 --- a/Alpha_shapes_2/include/CGAL/Alpha_shape_vertex_base_2.h +++ b/Alpha_shapes_2/include/CGAL/Alpha_shape_vertex_base_2.h @@ -32,26 +32,33 @@ namespace CGAL { //------------------------------------------------------------------- -template -class Alpha_shape_vertex_base_2 : public Default::Get >::type +template +class Alpha_shape_vertex_base_2 + : public Default::Get >::type { typedef typename Default::Get >::type Vb; - typedef typename Vb::Triangulation_data_structure TDS; -public: - typedef TDS Triangulation_data_structure; - typedef typename TDS::Vertex_handle Vertex_handle; - typedef typename TDS::Face_handle Face_handle; - typedef typename internal::Alpha_nt_selector_2::Type_of_alpha Type_of_alpha; - typedef Type_of_alpha FT; - typedef std::pair< Type_of_alpha, Type_of_alpha > Interval2; - typedef typename Vb::Point Point; +public: + typedef typename Vb::Vertex_handle Vertex_handle; + typedef typename Vb::Face_handle Face_handle; + typedef typename Vb::Point Point; template < typename TDS2 > struct Rebind_TDS { - typedef typename Vb::template Rebind_TDS::Other Vb2; - typedef Alpha_shape_vertex_base_2 Other; + typedef typename Vb::template Rebind_TDS::Other Vb2; + typedef Alpha_shape_vertex_base_2< + Gt, Vb2, ExactAlphaComparisonTag, Weighted_tag> Other; }; + + typedef typename internal::Alpha_nt_selector_2< + Gt, ExactAlphaComparisonTag, Weighted_tag>::Type_of_alpha Type_of_alpha; + typedef Type_of_alpha NT; + + typedef std::pair< Type_of_alpha, Type_of_alpha > Interval2; + private: Interval2 I;