mirror of https://github.com/CGAL/cgal
fix compilation issues
This commit is contained in:
parent
ffc619f871
commit
8b88547955
|
|
@ -133,9 +133,7 @@ struct One_point_from_facet_handle_property_map{
|
||||||
: m_graph( const_cast<typename boost::remove_const<FaceGraph>::type*>(g) )
|
: m_graph( const_cast<typename boost::remove_const<FaceGraph>::type*>(g) )
|
||||||
{}
|
{}
|
||||||
|
|
||||||
template <class FaceGraph,
|
One_point_from_facet_handle_property_map(FaceGraph* g, VertexPointPMap vppm )
|
||||||
class VertexPointPMap>
|
|
||||||
One_point_from_facet_handle_property_map(FaceGraph* gm, VertexPointPMap vppm )
|
|
||||||
: m_graph( const_cast<typename boost::remove_const<FaceGraph>::type*>(g) ),
|
: m_graph( const_cast<typename boost::remove_const<FaceGraph>::type*>(g) ),
|
||||||
m_vppm(vppm)
|
m_vppm(vppm)
|
||||||
{}
|
{}
|
||||||
|
|
|
||||||
|
|
@ -225,7 +225,7 @@ template<class Polyhedron>
|
||||||
class Neighbor_selector_by_edge
|
class Neighbor_selector_by_edge
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
typedef Halfedge_around_face_circulator<Polyhedron> Halfedge_around_face_circulator;
|
typedef ::CGAL::Halfedge_around_face_circulator<Polyhedron> Halfedge_around_face_circulator;
|
||||||
public:
|
public:
|
||||||
typedef typename boost::graph_traits<Polyhedron>::face_descriptor face_descriptor;
|
typedef typename boost::graph_traits<Polyhedron>::face_descriptor face_descriptor;
|
||||||
/**
|
/**
|
||||||
|
|
@ -275,7 +275,7 @@ template<class Polyhedron>
|
||||||
class Neighbor_selector_by_vertex
|
class Neighbor_selector_by_vertex
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
typedef Halfedge_around_target_circulator<Polyhedron> Halfedge_around_target_circulator;
|
typedef ::CGAL::Halfedge_around_target_circulator<Polyhedron> Halfedge_around_target_circulator;
|
||||||
typedef typename boost::graph_traits<Polyhedron>::halfedge_iterator halfedge_iterator;
|
typedef typename boost::graph_traits<Polyhedron>::halfedge_iterator halfedge_iterator;
|
||||||
typedef typename boost::graph_traits<Polyhedron>::vertex_iterator vertex_iterator;
|
typedef typename boost::graph_traits<Polyhedron>::vertex_iterator vertex_iterator;
|
||||||
public:
|
public:
|
||||||
|
|
@ -304,12 +304,12 @@ public:
|
||||||
const Facet_level_pair& pair = facet_queue.front();
|
const Facet_level_pair& pair = facet_queue.front();
|
||||||
|
|
||||||
face_descriptor facet_front = pair.first;
|
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
|
do { // loop on three vertices of the facet
|
||||||
Halfedge_around_target_circulator vertex_circulator(*edge,polyhedron), done(vertex_circulator);
|
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)
|
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<Polyhedron::null_face())) {
|
if(!(face(*vertex_circulator,polyhedron) == boost::graph_traits<Polyhedron>::null_face())) {
|
||||||
Facet_level_pair new_pair(face(opposite(*vertex_circulator),polyhedron,polyhedron),
|
Facet_level_pair new_pair(face(opposite(*vertex_circulator),polyhedron,polyhedron),
|
||||||
pair.second + 1);
|
pair.second + 1);
|
||||||
if(neighbors.insert(new_pair).second
|
if(neighbors.insert(new_pair).second
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ public:
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
typename Halfedge_around_face_circulator<Polyhedron> facet_circulator(halfedge(*facet_it,mesh),mesh), done(facet_circulator);
|
Halfedge_around_face_circulator<Polyhedron> facet_circulator(halfedge(*facet_it,mesh),mesh), done(facet_circulator);
|
||||||
|
|
||||||
double total_neighbor_sdf = 0.0;
|
double total_neighbor_sdf = 0.0;
|
||||||
std::size_t nb_valid_neighbors = 0;
|
std::size_t nb_valid_neighbors = 0;
|
||||||
|
|
@ -513,7 +513,7 @@ private:
|
||||||
while(!facet_queue.empty()) {
|
while(!facet_queue.empty()) {
|
||||||
face_descriptor facet = facet_queue.front();
|
face_descriptor facet = facet_queue.front();
|
||||||
|
|
||||||
typename Halfedge_around_face_circulator<Polyhedron> facet_circulator(halfedge(facet,mesh),mesh), done(facet_circulator);
|
Halfedge_around_face_circulator<Polyhedron> facet_circulator(halfedge(facet,mesh),mesh), done(facet_circulator);
|
||||||
do {
|
do {
|
||||||
if(face(opposite(*facet_circulator,mesh),mesh)==boost::graph_traits<Polyhedron>::null_face()) {
|
if(face(opposite(*facet_circulator,mesh),mesh)==boost::graph_traits<Polyhedron>::null_face()) {
|
||||||
continue; // no facet to traversal
|
continue; // no facet to traversal
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ sdf_values( const Polyhedron& polyhedron,
|
||||||
bool postprocess = true,
|
bool postprocess = true,
|
||||||
GeomTraits traits = GeomTraits())
|
GeomTraits traits = GeomTraits())
|
||||||
{
|
{
|
||||||
typedef boost::property_map<Polyhedron, vertex_point_t>::type VPMap;
|
typedef typename boost::property_map<Polyhedron, vertex_point_t>::type VPMap;
|
||||||
VPMap vpm = get(vertex_point,const_cast<Polyhedron&>(polyhedron));
|
VPMap vpm = get(vertex_point,const_cast<Polyhedron&>(polyhedron));
|
||||||
internal::Surface_mesh_segmentation<Polyhedron, GeomTraits, VPMap,Fast_sdf_calculation_mode>
|
internal::Surface_mesh_segmentation<Polyhedron, GeomTraits, VPMap,Fast_sdf_calculation_mode>
|
||||||
algorithm(polyhedron, traits,vpm);
|
algorithm(polyhedron, traits,vpm);
|
||||||
|
|
@ -176,7 +176,7 @@ segmentation_from_sdf_values( const Polyhedron& polyhedron,
|
||||||
bool output_cluster_ids = false,
|
bool output_cluster_ids = false,
|
||||||
GeomTraits traits = GeomTraits())
|
GeomTraits traits = GeomTraits())
|
||||||
{
|
{
|
||||||
typedef boost::property_map<Polyhedron, boost::vertex_point_t>::type VPMap;
|
typedef typename boost::property_map<Polyhedron, boost::vertex_point_t>::type VPMap;
|
||||||
internal::Surface_mesh_segmentation<Polyhedron, GeomTraits, VPMap> algorithm(
|
internal::Surface_mesh_segmentation<Polyhedron, GeomTraits, VPMap> algorithm(
|
||||||
polyhedron, traits, get(vertex_point,const_cast<Polyhedron&>(polyhedron)));
|
polyhedron, traits, get(vertex_point,const_cast<Polyhedron&>(polyhedron)));
|
||||||
return algorithm.partition(number_of_clusters, smoothing_lambda, sdf_values_map,
|
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,
|
bool output_cluster_ids = false,
|
||||||
GeomTraits traits = GeomTraits())
|
GeomTraits traits = GeomTraits())
|
||||||
{
|
{
|
||||||
typedef boost::graph_traits<Polyhedron>::face_descriptor face_descriptor;
|
typedef typename boost::graph_traits<Polyhedron>::face_descriptor face_descriptor;
|
||||||
typedef std::map<face_descriptor, double>
|
typedef std::map<face_descriptor, double>
|
||||||
Facet_double_map;
|
Facet_double_map;
|
||||||
Facet_double_map internal_sdf_map;
|
Facet_double_map internal_sdf_map;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue