diff --git a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/properties.h b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/properties.h index f10647ec1f9..74622236946 100644 --- a/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/properties.h +++ b/Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/properties.h @@ -28,9 +28,7 @@ namespace CGAL enum vertex_num_feature_edges_t { vertex_num_feature_edges }; enum halfedge_is_feature_t { halfedge_is_feature }; -enum vertex_selection_t { vertex_selection}; -enum edge_selection_t { edge_selection}; -enum face_selection_t { face_selection}; + enum vertex_time_stamp_t { vertex_time_stamp}; enum halfedge_time_stamp_t { halfedge_time_stamp}; enum face_time_stamp_t { face_time_stamp}; diff --git a/Polyhedron/demo/Polyhedron/Polyhedron_type.h b/Polyhedron/demo/Polyhedron/Polyhedron_type.h index b98d1f3541e..9130a85caf6 100644 --- a/Polyhedron/demo/Polyhedron/Polyhedron_type.h +++ b/Polyhedron/demo/Polyhedron/Polyhedron_type.h @@ -4,6 +4,7 @@ // CGAL // kernel #include "Kernel_type.h" +#include "properties.h" // surface mesh #include diff --git a/Polyhedron/demo/Polyhedron/SMesh_type.h b/Polyhedron/demo/Polyhedron/SMesh_type.h index 352efe78353..2f7bd02121e 100644 --- a/Polyhedron/demo/Polyhedron/SMesh_type.h +++ b/Polyhedron/demo/Polyhedron/SMesh_type.h @@ -1,6 +1,8 @@ #ifndef SMESH_TYPE_H #define SMESH_TYPE_H +#include "properties.h" + #include #include #include @@ -15,4 +17,30 @@ typedef boost::graph_traits::face_descriptor face_descriptor; typedef boost::graph_traits::vertex_descriptor vertex_descriptor; typedef boost::graph_traits::halfedge_descriptor halfedge_descriptor; + +namespace boost { + +template +struct property_map, CGAL::vertex_selection_t> +{ + + typedef typename boost::graph_traits >::vertex_descriptor vertex_descriptor; + + typedef typename CGAL::Surface_mesh

::template Property_map type; + typedef type const_type; +}; + + +template +struct property_map, CGAL::face_selection_t> +{ + + typedef typename boost::graph_traits >::face_descriptor face_descriptor; + + typedef typename CGAL::Surface_mesh

::template Property_map type; + typedef type const_type; +}; + +} // namespace boost + #endif // SMESH_TYPE_H diff --git a/Polyhedron/demo/Polyhedron/properties.h b/Polyhedron/demo/Polyhedron/properties.h new file mode 100644 index 00000000000..15f1d1224a8 --- /dev/null +++ b/Polyhedron/demo/Polyhedron/properties.h @@ -0,0 +1,12 @@ +#ifndef CGAL_POLYHEDRON_DEMO_PROPERTIES_H +#define CGAL_POLYHEDRON_DEMO_PROPERTIES_H + +namespace CGAL { + +enum vertex_selection_t { vertex_selection}; +enum edge_selection_t { edge_selection}; +enum face_selection_t { face_selection}; + +} // namespace CGAL + +#endif diff --git a/Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h b/Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h index ae06e1de0b0..12136e931c3 100644 --- a/Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h +++ b/Surface_mesh/include/CGAL/boost/graph/PMP_properties_Surface_mesh.h @@ -58,28 +58,6 @@ struct property_map, CGAL::halfedge_is_feature_t> }; -template -struct property_map, CGAL::vertex_selection_t> -{ - - typedef typename boost::graph_traits >::vertex_descriptor vertex_descriptor; - - typedef typename CGAL::Surface_mesh

::template Property_map type; - typedef type const_type; -}; - - -template -struct property_map, CGAL::face_selection_t> -{ - - typedef typename boost::graph_traits >::face_descriptor face_descriptor; - - typedef typename CGAL::Surface_mesh

::template Property_map type; - typedef type const_type; -}; - - template struct property_map, CGAL::vertex_num_feature_edges_t> {