diff --git a/Polyhedron/include/CGAL/Polyhedron_3_property_map.h b/Polyhedron/include/CGAL/Polyhedron_3_property_map.h index c7d9363ad3a..a1bba3479d8 100644 --- a/Polyhedron/include/CGAL/Polyhedron_3_property_map.h +++ b/Polyhedron/include/CGAL/Polyhedron_3_property_map.h @@ -133,9 +133,7 @@ struct One_point_from_facet_handle_property_map{ : m_graph( const_cast::type*>(g) ) {} -template - One_point_from_facet_handle_property_map(FaceGraph* gm, VertexPointPMap vppm ) + One_point_from_facet_handle_property_map(FaceGraph* g, VertexPointPMap vppm ) : m_graph( const_cast::type*>(g) ), m_vppm(vppm) {} diff --git a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Filters.h b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Filters.h index ad2bb6104a8..520030accb8 100644 --- a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Filters.h +++ b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Filters.h @@ -225,7 +225,7 @@ template class Neighbor_selector_by_edge { private: - typedef Halfedge_around_face_circulator Halfedge_around_face_circulator; + typedef ::CGAL::Halfedge_around_face_circulator Halfedge_around_face_circulator; public: typedef typename boost::graph_traits::face_descriptor face_descriptor; /** @@ -275,7 +275,7 @@ template class Neighbor_selector_by_vertex { private: - typedef Halfedge_around_target_circulator Halfedge_around_target_circulator; + typedef ::CGAL::Halfedge_around_target_circulator Halfedge_around_target_circulator; typedef typename boost::graph_traits::halfedge_iterator halfedge_iterator; typedef typename boost::graph_traits::vertex_iterator vertex_iterator; public: @@ -304,12 +304,12 @@ public: const Facet_level_pair& pair = facet_queue.front(); face_descriptor facet_front = pair.first; - halfedge_iterator edge = halfedge(facet_front,polyhedron) + halfedge_iterator edge = halfedge(facet_front,polyhedron); do { // loop on three vertices of the facet Halfedge_around_target_circulator vertex_circulator(*edge,polyhedron), done(vertex_circulator); do { // for each vertex loop on incoming edges (through those edges loop on neighbor facets which includes the vertex) - if(!(face(*vertex_circulator,polyhedron) == graph_traits::null_face())) { Facet_level_pair new_pair(face(opposite(*vertex_circulator),polyhedron,polyhedron), pair.second + 1); if(neighbors.insert(new_pair).second diff --git a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Surface_mesh_segmentation.h b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Surface_mesh_segmentation.h index 80f31335598..c8b4ddf0b9e 100644 --- a/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Surface_mesh_segmentation.h +++ b/Surface_mesh_segmentation/include/CGAL/internal/Surface_mesh_segmentation/Surface_mesh_segmentation.h @@ -89,7 +89,7 @@ public: continue; } - typename Halfedge_around_face_circulator facet_circulator(halfedge(*facet_it,mesh),mesh), done(facet_circulator); + Halfedge_around_face_circulator facet_circulator(halfedge(*facet_it,mesh),mesh), done(facet_circulator); double total_neighbor_sdf = 0.0; std::size_t nb_valid_neighbors = 0; @@ -513,7 +513,7 @@ private: while(!facet_queue.empty()) { face_descriptor facet = facet_queue.front(); - typename Halfedge_around_face_circulator facet_circulator(halfedge(facet,mesh),mesh), done(facet_circulator); + Halfedge_around_face_circulator facet_circulator(halfedge(facet,mesh),mesh), done(facet_circulator); do { if(face(opposite(*facet_circulator,mesh),mesh)==boost::graph_traits::null_face()) { continue; // no facet to traversal diff --git a/Surface_mesh_segmentation/include/CGAL/mesh_segmentation.h b/Surface_mesh_segmentation/include/CGAL/mesh_segmentation.h index e7625db724b..33c11638014 100644 --- a/Surface_mesh_segmentation/include/CGAL/mesh_segmentation.h +++ b/Surface_mesh_segmentation/include/CGAL/mesh_segmentation.h @@ -42,7 +42,7 @@ sdf_values( const Polyhedron& polyhedron, bool postprocess = true, GeomTraits traits = GeomTraits()) { - typedef boost::property_map::type VPMap; + typedef typename boost::property_map::type VPMap; VPMap vpm = get(vertex_point,const_cast(polyhedron)); internal::Surface_mesh_segmentation algorithm(polyhedron, traits,vpm); @@ -176,7 +176,7 @@ segmentation_from_sdf_values( const Polyhedron& polyhedron, bool output_cluster_ids = false, GeomTraits traits = GeomTraits()) { - typedef boost::property_map::type VPMap; + typedef typename boost::property_map::type VPMap; internal::Surface_mesh_segmentation algorithm( polyhedron, traits, get(vertex_point,const_cast(polyhedron))); return algorithm.partition(number_of_clusters, smoothing_lambda, sdf_values_map, @@ -200,7 +200,7 @@ segmentation_via_sdf_values(const Polyhedron& polyhedron, bool output_cluster_ids = false, GeomTraits traits = GeomTraits()) { - typedef boost::graph_traits::face_descriptor face_descriptor; + typedef typename boost::graph_traits::face_descriptor face_descriptor; typedef std::map Facet_double_map; Facet_double_map internal_sdf_map;