Use vertices_around_target()

This commit is contained in:
Andreas Fabri 2022-05-03 15:09:05 +01:00
parent 5e58f4a3a3
commit fd20beeef7
5 changed files with 9 additions and 21 deletions

View File

@ -16,7 +16,6 @@
#include <boost/graph/properties.hpp>
#include <CGAL/boost/iterator/transform_iterator.hpp>
#include <boost/graph/adjacency_iterator.hpp>
#include <CGAL/boost/graph/internal/OM_iterator_from_circulator.h>
#include <CGAL/boost/graph/iterator.h>
@ -126,7 +125,7 @@ public:
typedef CGAL::Out_edge_iterator<SM> out_edge_iterator;
typedef typename boost::adjacency_iterator_generator<SM, vertex_descriptor, out_edge_iterator>::type adjacency_iterator;
typedef CGAL::Vertex_around_target_iterator<SM> adjacency_iterator;
// nulls
static vertex_descriptor null_vertex() { return vertex_descriptor(); }
@ -270,12 +269,10 @@ out_edges(typename boost::graph_traits<OPEN_MESH_CLASS >::vertex_descriptor v,
template <typename K>
CGAL::Iterator_range<typename boost::graph_traits<OPEN_MESH_CLASS >::adjacency_iterator>
adjacnt_vertices(typename boost::graph_traits<OPEN_MESH_CLASS >::vertex_descriptor v,
adjaecnt_vertices(typename boost::graph_traits<OPEN_MESH_CLASS >::vertex_descriptor v,
const OPEN_MESH_CLASS& sm)
{
typedef typename boost::graph_traits<OPEN_MESH_CLASS >::out_edge_iterator OutEdgeIter;
typedef typename boost::graph_traits<OPEN_MESH_CLASS >::adjacency_iterator Iter;
return CGAL::make_range(Iter(OutEdgeIter(halfedge(v,sm),sm), &sm), Iter(OutEdgeIter(halfedge(v,sm),sm,1), &sm));
return CGAL::vertices_around_target(v,sm);
}

View File

@ -20,7 +20,6 @@
#include <boost/config.hpp>
#include <boost/iterator/iterator_adaptor.hpp>
#include <CGAL/boost/iterator/transform_iterator.hpp>
#include <boost/graph/adjacency_iterator.hpp>
#include <boost/type_traits/remove_const.hpp>
#include <boost/graph/graph_traits.hpp>
@ -181,7 +180,7 @@ public:
typedef In_edge_iterator<HDS> in_edge_iterator;
typedef typename boost::adjacency_iterator_generator<HDS, vertex_descriptor, out_edge_iterator>::type adjacency_iterator;
typedef Vertex_around_target_iterator<HDS> adjacency_iterator;
typedef boost::undirected_tag directed_category;
typedef boost::disallow_parallel_edge_tag edge_parallel_category;

View File

@ -177,9 +177,7 @@ inline Iterator_range<typename boost::graph_traits< HalfedgeDS_default<T,I,A> co
adjacent_vertices( typename boost::graph_traits< HalfedgeDS_default<T,I,A> const>::vertex_descriptor u
, const HalfedgeDS_default<T,I,A>& p)
{
typedef typename boost::graph_traits< HalfedgeDS_default<T,I,A> const>::out_edge_iterator OutEdgeIter;
typedef typename boost::graph_traits< HalfedgeDS_default<T,I,A> const>::adjacency_iterator Iter;
return make_range(Iter(OutEdgeIter(halfedge(u,p),p),&p), Iter(OutEdgeIter(halfedge(u,p),p,1), &p));
return CGAL::vertices_around_target(u,p);
}
//

View File

@ -208,7 +208,7 @@ public :
typedef CGAL::In_edge_iterator<CMap> in_edge_iterator;
typedef CGAL::Out_edge_iterator<CMap> out_edge_iterator;
typedef typename boost::adjacency_iterator_generator<CMap, vertex_descriptor, out_edge_iterator>::type adjacency_iterator;
typedef CGAL::Vertex_around_target_iterator<CMap> adjacency_iterator;
// nulls
static vertex_descriptor null_vertex() { return nullptr; }
@ -400,9 +400,7 @@ CGAL::Iterator_range<typename boost::graph_traits<CGAL_LCC_TYPE>::adjacency_iter
adjacent_vertices(typename boost::graph_traits<CGAL_LCC_TYPE>::vertex_descriptor v,
const CGAL_LCC_TYPE& lcc)
{
typedef typename boost::graph_traits<CGAL_LCC_TYPE>::out_edge_iterator OutEdgeIter;
typedef typename boost::graph_traits<CGAL_LCC_TYPE>::adjacency_iterator Iter;
return make_range(Iter(OutEdgeIter(halfedge(v, lcc), lcc), &lcc), Iter(OutEdgeIter(halfedge(v, lcc), lcc, 1), &lcc));
return CGAL::vertices_around_target(v,lcc);
}
//

View File

@ -30,7 +30,6 @@
#include <CGAL/Surface_mesh.h>
#include <CGAL/assertions.h>
#include <boost/graph/adjacency_iterator.hpp>
namespace boost {
@ -85,7 +84,7 @@ public:
typedef CGAL::Out_edge_iterator<SM> out_edge_iterator;
typedef typename boost::adjacency_iterator_generator<SM, vertex_descriptor, out_edge_iterator>::type adjacency_iterator;
typedef CGAL::Vertex_around_target_iterator<SM> adjacency_iterator;
// nulls
static vertex_descriptor null_vertex() { return vertex_descriptor(); }
@ -228,10 +227,7 @@ Iterator_range<typename boost::graph_traits<CGAL::Surface_mesh<P> >::adjacency_i
adjacent_vertices(typename boost::graph_traits<CGAL::Surface_mesh<P> >::vertex_descriptor v,
const CGAL::Surface_mesh<P>& sm)
{
typedef typename boost::graph_traits<CGAL::Surface_mesh<P> >::out_edge_iterator OutEdgeIter;
typedef typename boost::graph_traits<CGAL::Surface_mesh<P> >::adjacency_iterator Iter;
return make_range(Iter(OutEdgeIter(halfedge(v,sm),sm), &sm),
Iter(OutEdgeIter(halfedge(v,sm),sm,1), &sm));
return CGAL::vertices_around_target(v,sm);
}
template<typename P>