Remove dependencies in face graph wrapper.

This commit is contained in:
Guillaume Damiand 2019-07-11 11:52:18 +02:00
parent e44ca7bb71
commit 3c88114ab2
3 changed files with 22 additions and 31 deletions

View File

@ -24,6 +24,8 @@
#include <CGAL/Functors_for_face_graph_wrapper.h>
#include <CGAL/Iterators_for_face_graph_wrapper.h>
#include <CGAL/internal/Combinatorial_map_internal_functors.h>
#include <CGAL/Polyhedron_3_fwd.h>
#include <CGAL/Surface_mesh/Surface_mesh_fwd.h>
namespace CGAL
{
@ -62,15 +64,6 @@ namespace CGAL
class Map, typename Storage>
class Linear_cell_complex_for_generalized_map;
template<class P>
class Surface_mesh;
template<class PolyhedronTraits_3,
class PolyhedronItems_3,
template<class T, class I, class A> class T_HDS,
class Alloc>
struct Polyhedron_3;
namespace Surface_mesh_topology
{
template <typename Items, typename Alloc, typename Storage>
@ -497,15 +490,15 @@ public:
{ return mmap.is_empty(); }
size_type capacity() const
{ return CGAL::num_halfedges(mmap.get_fg()); }
{ return num_halfedges(mmap.get_fg()); }
bool is_used(size_type i) const
{
for (typename boost::template graph_traits<typename Self::HEG>::halfedge_iterator
it=CGAL::halfedges(mmap.get_fg()).begin(),
itend=CGAL::halfedges(mmap.get_fg()).end(); it!=itend; ++it)
it=halfedges(mmap.get_fg()).begin(),
itend=halfedges(mmap.get_fg()).end(); it!=itend; ++it)
{
if (i==0) { return !CGAL::is_border(*it, mmap.get_fg()); }
if (i==0) { return !is_border(*it, mmap.get_fg()); }
--i;
}
return false;
@ -550,8 +543,8 @@ public:
{
CGAL_assertion(darts().is_used(i));
for (typename boost::template graph_traits<typename Self::HEG>::halfedge_iterator
it=CGAL::halfedges(get_fg()).begin(),
itend=CGAL::halfedges(get_fg()).end(); it!=itend; ++it)
it=halfedges(get_fg()).begin(),
itend=halfedges(get_fg()).end(); it!=itend; ++it)
{
if (i==0) { return *it; }
--i;
@ -563,8 +556,8 @@ public:
{
CGAL_assertion(darts().is_used(i));
for (typename boost::template graph_traits<typename Self::HEG>::halfedge_iterator
it=CGAL::halfedges(get_fg()).begin(),
itend=CGAL::halfedges(get_fg()).end(); it!=itend; ++it)
it=halfedges(get_fg()).begin(),
itend=halfedges(get_fg()).end(); it!=itend; ++it)
{
if (i==0) { return *it; }
--i;

View File

@ -23,8 +23,6 @@
#include <boost/graph/graph_traits.hpp>
#include <CGAL/boost/graph/helpers.h>
#include <CGAL/boost/graph/graph_traits_Polyhedron_3.h>
#include <CGAL/boost/graph/graph_traits_Surface_mesh.h>
#include <CGAL/Iterators_for_face_graph_wrapper.h>
////////////////////////////////////////////////////////////////////////////////
@ -51,7 +49,7 @@ struct Is_free<HEG, 2>
{
typedef typename boost::graph_traits<HEG>::halfedge_descriptor Dart_const_handle;
static bool value(const HEG& heg, Dart_const_handle dh)
{ return CGAL::is_border(CGAL::opposite(dh, heg), heg); }
{ return is_border(opposite(dh, heg), heg); }
};
////////////////////////////////////////////////////////////////////////////////
/// Get_beta
@ -72,14 +70,14 @@ struct Get_beta<HEG, 0>
{
typedef typename boost::graph_traits<HEG>::halfedge_descriptor Dart_const_handle;
static Dart_const_handle value(const HEG& heg, Dart_const_handle dh)
{ return CGAL::prev(dh, heg); }
{ return prev(dh, heg); }
};
template<typename HEG>
struct Get_beta<HEG, 1>
{
typedef typename boost::graph_traits<HEG>::halfedge_descriptor Dart_const_handle;
static Dart_const_handle value(const HEG& heg, Dart_const_handle dh)
{ return CGAL::next(dh, heg); }
{ return next(dh, heg); }
};
template<typename HEG>
struct Get_beta<HEG, 2>
@ -88,7 +86,7 @@ struct Get_beta<HEG, 2>
static Dart_const_handle value(const HEG& heg, Dart_const_handle dh)
{
if (Is_free<HEG, 2>::value(heg, dh)) return Dart_const_handle();
return CGAL::opposite(dh, heg);
return opposite(dh, heg);
}
};
////////////////////////////////////////////////////////////////////////////////

View File

@ -45,17 +45,17 @@ namespace CGAL
/// Main constructor.
FGW_dart_iterator_basic_of_all(const Map& amap):
mmap(amap),
m_it(CGAL::halfedges(amap.get_fg()).begin())
m_it(halfedges(amap.get_fg()).begin())
{
if (m_it!=CGAL::halfedges(amap.get_fg()).end() &&
CGAL::is_border(*m_it, amap.get_fg()))
if (m_it!=halfedges(amap.get_fg()).end() &&
is_border(*m_it, amap.get_fg()))
{ operator++(0); }
}
/// Constructor with a dart in parameter (for end iterator).
FGW_dart_iterator_basic_of_all(const Map& amap, Dart_handle /*adart*/):
mmap(amap),
m_it(CGAL::halfedges(amap.get_fg()).end())
m_it(halfedges(amap.get_fg()).end())
{}
FGW_dart_iterator_basic_of_all(const FGW_dart_iterator_basic_of_all& other):
@ -75,14 +75,14 @@ namespace CGAL
/// Prefix ++ operator.
Self& operator++()
{
CGAL_assertion(m_it!=CGAL::halfedges(this->mmap.get_fg()).end());
CGAL_assertion(m_it!=halfedges(this->mmap.get_fg()).end());
do
{
++m_it;
}
while(m_it!=CGAL::halfedges(this->mmap.get_fg()).end() &&
CGAL::is_border(*m_it, this->mmap.get_fg()));
while(m_it!=halfedges(this->mmap.get_fg()).end() &&
is_border(*m_it, this->mmap.get_fg()));
return *this;
}
@ -93,7 +93,7 @@ namespace CGAL
Dart_handle operator*() const
{
CGAL_assertion(m_it!=CGAL::halfedges(this->mmap.get_fg()).end());
CGAL_assertion(m_it!=halfedges(this->mmap.get_fg()).end());
return *m_it;
}