44#ifndef OPENMESH_POLYCONNECTIVITY_HH
45#define OPENMESH_POLYCONNECTIVITY_HH
47#include <OpenMesh/Core/Mesh/ArrayKernel.hh>
48#include <OpenMesh/Core/Mesh/SmartRange.hh>
55 template <
class Mesh,
class ValueHandle,
class MemberOwner,
bool (MemberOwner::*PrimitiveStatusMember)() const,
size_t (MemberOwner::*PrimitiveCountMember)() const>
56 class GenericIteratorT;
59 class GenericCirculatorBaseT;
61 template<
typename Traits>
62 class GenericCirculatorT_DEPRECATED;
64 template<
typename Traits,
bool CW>
65 class GenericCirculatorT;
68template <
typename RangeTraitT>
74 ITER_T (CONTAINER_T::*begin_fn)()
const,
75 ITER_T (CONTAINER_T::*end_fn)()
const>
78 using CONTAINER_TYPE = CONTAINER_T;
79 using ITER_TYPE = ITER_T;
80 static ITER_TYPE begin(
const CONTAINER_TYPE& _container) {
return (_container.*begin_fn)(); }
81 static ITER_TYPE end(
const CONTAINER_TYPE& _container) {
return (_container.*end_fn)(); }
85template <
typename CirculatorRangeTraitT>
91 typename CENTER_ENTITY_T,
93 ITER_T (CONTAINER_T::*begin_fn)(CENTER_ENTITY_T)
const,
94 ITER_T (CONTAINER_T::*end_fn)(CENTER_ENTITY_T)
const>
97 using CONTAINER_TYPE = CONTAINER_T;
98 using ITER_TYPE = ITER_T;
99 using CENTER_ENTITY_TYPE = CENTER_ENTITY_T;
100 using TO_ENTITYE_TYPE = TO_ENTITY_T;
101 static ITER_TYPE begin(
const CONTAINER_TYPE& _container, CENTER_ENTITY_TYPE _ce) {
return (_container.*begin_fn)(_ce); }
102 static ITER_TYPE begin(
const CONTAINER_TYPE& _container,
HalfedgeHandle _heh,
int) {
return ITER_TYPE(_container, _heh); }
103 static ITER_TYPE end(
const CONTAINER_TYPE& _container, CENTER_ENTITY_TYPE _ce) {
return (_container.*end_fn)(_ce); }
104 static ITER_TYPE end(
const CONTAINER_TYPE& _container,
HalfedgeHandle _heh,
int) {
return ITER_TYPE(_container, _heh,
true); }
557 SmartFaceHandle add_face(
const std::vector<SmartVertexHandle>& _vhandles);
610 void delete_vertex(
VertexHandle _vh,
bool _delete_isolated_vertices =
true);
620 void delete_edge(
EdgeHandle _eh,
bool _delete_isolated_vertices=
true);
632 void delete_face(
FaceHandle _fh,
bool _delete_isolated_vertices=
true);
641 using ArrayKernel::next_halfedge_handle;
642 using ArrayKernel::prev_halfedge_handle;
643 using ArrayKernel::opposite_halfedge_handle;
644 using ArrayKernel::ccw_rotated_halfedge_handle;
645 using ArrayKernel::cw_rotated_halfedge_handle;
653 using ArrayKernel::s_halfedge_handle;
654 using ArrayKernel::s_edge_handle;
659 using ArrayKernel::halfedge_handle;
660 using ArrayKernel::edge_handle;
661 using ArrayKernel::face_handle;
679 VertexIter vertices_begin();
681 ConstVertexIter vertices_begin()
const;
683 VertexIter vertices_end();
685 ConstVertexIter vertices_end()
const;
688 HalfedgeIter halfedges_begin();
690 ConstHalfedgeIter halfedges_begin()
const;
692 HalfedgeIter halfedges_end();
694 ConstHalfedgeIter halfedges_end()
const;
697 EdgeIter edges_begin();
699 ConstEdgeIter edges_begin()
const;
701 EdgeIter edges_end();
703 ConstEdgeIter edges_end()
const;
706 FaceIter faces_begin();
708 ConstFaceIter faces_begin()
const;
710 FaceIter faces_end();
712 ConstFaceIter faces_end()
const;
721 VertexIter vertices_sbegin();
723 ConstVertexIter vertices_sbegin()
const;
726 HalfedgeIter halfedges_sbegin();
728 ConstHalfedgeIter halfedges_sbegin()
const;
731 EdgeIter edges_sbegin();
733 ConstEdgeIter edges_sbegin()
const;
736 FaceIter faces_sbegin();
738 ConstFaceIter faces_sbegin()
const;
782 ConstVertexVertexCWIter cvv_cwiter(
VertexHandle _vh)
const;
784 ConstVertexVertexCCWIter cvv_ccwiter(
VertexHandle _vh)
const;
786 ConstVertexIHalfedgeIter cvih_iter(
VertexHandle _vh)
const;
788 ConstVertexIHalfedgeCWIter cvih_cwiter(
VertexHandle _vh)
const;
790 ConstVertexIHalfedgeCCWIter cvih_ccwiter(
VertexHandle _vh)
const;
792 ConstVertexOHalfedgeIter cvoh_iter(
VertexHandle _vh)
const;
794 ConstVertexOHalfedgeCWIter cvoh_cwiter(
VertexHandle _vh)
const;
796 ConstVertexOHalfedgeCCWIter cvoh_ccwiter(
VertexHandle _vh)
const;
800 ConstVertexEdgeCWIter cve_cwiter(
VertexHandle _vh)
const;
802 ConstVertexEdgeCCWIter cve_ccwiter(
VertexHandle _vh)
const;
806 ConstVertexFaceCWIter cvf_cwiter(
VertexHandle _vh)
const;
808 ConstVertexFaceCCWIter cvf_ccwiter(
VertexHandle _vh)
const;
821 FaceHalfedgeCCWIter fh_ccwiter(
FaceHandle _fh);
836 ConstFaceVertexIter cfv_iter(
FaceHandle _fh)
const;
838 ConstFaceVertexCWIter cfv_cwiter(
FaceHandle _fh)
const;
840 ConstFaceVertexCCWIter cfv_ccwiter(
FaceHandle _fh)
const;
842 ConstFaceHalfedgeIter cfh_iter(
FaceHandle _fh)
const;
844 ConstFaceHalfedgeCWIter cfh_cwiter(
FaceHandle _fh)
const;
846 ConstFaceHalfedgeCCWIter cfh_ccwiter(
FaceHandle _fh)
const;
848 ConstFaceEdgeIter cfe_iter(
FaceHandle _fh)
const;
850 ConstFaceEdgeCWIter cfe_cwiter(
FaceHandle _fh)
const;
852 ConstFaceEdgeCCWIter cfe_ccwiter(
FaceHandle _fh)
const;
854 ConstFaceFaceIter cff_iter(
FaceHandle _fh)
const;
856 ConstFaceFaceCWIter cff_cwiter(
FaceHandle _fh)
const;
858 ConstFaceFaceCCWIter cff_ccwiter(
FaceHandle _fh)
const;
868 ConstEdgeVertexIter cev_iter(
EdgeHandle _eh)
const;
870 ConstEdgeHalfedgeIter ceh_iter(
EdgeHandle _eh)
const;
872 ConstEdgeFaceIter cef_iter(
EdgeHandle _eh)
const;
909 ConstVertexVertexIter cvv_begin(
VertexHandle _vh)
const;
911 ConstVertexVertexCWIter cvv_cwbegin(
VertexHandle _vh)
const;
913 ConstVertexVertexCCWIter cvv_ccwbegin(
VertexHandle _vh)
const;
915 ConstVertexIHalfedgeIter cvih_begin(
VertexHandle _vh)
const;
917 ConstVertexIHalfedgeCWIter cvih_cwbegin(
VertexHandle _vh)
const;
919 ConstVertexIHalfedgeCCWIter cvih_ccwbegin(
VertexHandle _vh)
const;
921 ConstVertexOHalfedgeIter cvoh_begin(
VertexHandle _vh)
const;
923 ConstVertexOHalfedgeCWIter cvoh_cwbegin(
VertexHandle _vh)
const;
925 ConstVertexOHalfedgeCCWIter cvoh_ccwbegin(
VertexHandle _vh)
const;
929 ConstVertexEdgeCWIter cve_cwbegin(
VertexHandle _vh)
const;
931 ConstVertexEdgeCCWIter cve_ccwbegin(
VertexHandle _vh)
const;
935 ConstVertexFaceCWIter cvf_cwbegin(
VertexHandle _vh)
const;
937 ConstVertexFaceCCWIter cvf_ccwbegin(
VertexHandle _vh)
const;
944 FaceVertexCCWIter fv_ccwbegin(
FaceHandle _fh);
948 FaceHalfedgeCWIter fh_cwbegin(
FaceHandle _fh);
950 FaceHalfedgeCCWIter fh_ccwbegin(
FaceHandle _fh);
971 ConstFaceVertexIter cfv_begin(
FaceHandle _fh)
const;
973 ConstFaceVertexCWIter cfv_cwbegin(
FaceHandle _fh)
const;
975 ConstFaceVertexCCWIter cfv_ccwbegin(
FaceHandle _fh)
const;
977 ConstFaceHalfedgeIter cfh_begin(
FaceHandle _fh)
const;
979 ConstFaceHalfedgeCWIter cfh_cwbegin(
FaceHandle _fh)
const;
981 ConstFaceHalfedgeCCWIter cfh_ccwbegin(
FaceHandle _fh)
const;
983 ConstFaceEdgeIter cfe_begin(
FaceHandle _fh)
const;
985 ConstFaceEdgeCWIter cfe_cwbegin(
FaceHandle _fh)
const;
987 ConstFaceEdgeCCWIter cfe_ccwbegin(
FaceHandle _fh)
const;
989 ConstFaceFaceIter cff_begin(
FaceHandle _fh)
const;
991 ConstFaceFaceCWIter cff_cwbegin(
FaceHandle _fh)
const;
993 ConstFaceFaceCCWIter cff_ccwbegin(
FaceHandle _fh)
const;
1009 ConstEdgeVertexIter cev_begin(
EdgeHandle _eh)
const;
1011 ConstEdgeHalfedgeIter ceh_begin(
EdgeHandle _eh)
const;
1013 ConstEdgeFaceIter cef_begin(
EdgeHandle _eh)
const;
1051 ConstVertexVertexCWIter cvv_cwend(
VertexHandle _vh)
const;
1053 ConstVertexVertexCCWIter cvv_ccwend(
VertexHandle _vh)
const;
1055 ConstVertexIHalfedgeIter cvih_end(
VertexHandle _vh)
const;
1057 ConstVertexIHalfedgeCWIter cvih_cwend(
VertexHandle _vh)
const;
1059 ConstVertexIHalfedgeCCWIter cvih_ccwend(
VertexHandle _vh)
const;
1061 ConstVertexOHalfedgeIter cvoh_end(
VertexHandle _vh)
const;
1063 ConstVertexOHalfedgeCWIter cvoh_cwend(
VertexHandle _vh)
const;
1065 ConstVertexOHalfedgeCCWIter cvoh_ccwend(
VertexHandle _vh)
const;
1069 ConstVertexEdgeCWIter cve_cwend(
VertexHandle _vh)
const;
1071 ConstVertexEdgeCCWIter cve_ccwend(
VertexHandle _vh)
const;
1075 ConstVertexFaceCWIter cvf_cwend(
VertexHandle _vh)
const;
1077 ConstVertexFaceCCWIter cvf_ccwend(
VertexHandle _vh)
const;
1090 FaceHalfedgeCCWIter fh_ccwend(
FaceHandle _fh);
1111 ConstFaceVertexIter cfv_end(
FaceHandle _fh)
const;
1113 ConstFaceVertexCWIter cfv_cwend(
FaceHandle _fh)
const;
1115 ConstFaceVertexCCWIter cfv_ccwend(
FaceHandle _fh)
const;
1117 ConstFaceHalfedgeIter cfh_end(
FaceHandle _fh)
const;
1119 ConstFaceHalfedgeCWIter cfh_cwend(
FaceHandle _fh)
const;
1121 ConstFaceHalfedgeCCWIter cfh_ccwend(
FaceHandle _fh)
const;
1123 ConstFaceEdgeIter cfe_end(
FaceHandle _fh)
const;
1125 ConstFaceEdgeCWIter cfe_cwend(
FaceHandle _fh)
const;
1127 ConstFaceEdgeCCWIter cfe_ccwend(
FaceHandle _fh)
const;
1129 ConstFaceFaceIter cff_end(
FaceHandle _fh)
const;
1131 ConstFaceFaceCWIter cff_cwend(
FaceHandle _fh)
const;
1133 ConstFaceFaceCCWIter cff_ccwend(
FaceHandle _fh)
const;
1149 ConstEdgeVertexIter cev_end(
EdgeHandle _eh)
const;
1151 ConstEdgeHalfedgeIter ceh_end(
EdgeHandle _eh)
const;
1153 ConstEdgeFaceIter cef_end(
EdgeHandle _eh)
const;
1202 template <
typename HandleType>
1257 template <
typename HandleType>
1264 template <
typename HandleType>
1581 return (is_boundary(halfedge_handle(_eh, 0)) ||
1582 is_boundary(halfedge_handle(_eh, 1)));
1599 return (!(heh.is_valid() && face_handle(heh).is_valid()));
1611 bool is_boundary(
FaceHandle _fh,
bool _check_vertex=
false)
const;
1667 bool is_simply_connected(
FaceHandle _fh)
const;
1795 struct AddFaceEdgeInfo
1801 std::vector<AddFaceEdgeInfo> edgeData_;
1802 std::vector<std::pair<HalfedgeHandle, HalfedgeHandle> > next_cache_;
1836#define OPENMESH_POLYCONNECTIVITY_INTERFACE_INCLUDE
1837#include <OpenMesh/Core/Mesh/SmartHandles.hh>
1838#include <OpenMesh/Core/Mesh/PolyConnectivity_inline_impl.hh>
1839#undef OPENMESH_POLYCONNECTIVITY_INTERFACE_INCLUDE
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:59
Mesh kernel using arrays for mesh item storage.
Definition: ArrayKernel.hh:88
bool is_boundary(HalfedgeHandle _heh) const
Is halfedge _heh a boundary halfedge (is its face handle invalid) ?
Definition: ArrayKernel.hh:400
void assign_connectivity(const ArrayKernel &_other)
ArrayKernel uses the default copy constructor and assignment operator, which means that the connectiv...
Definition: ArrayKernel.cc:71
Generic class for iterator ranges.
Definition: PolyConnectivity_inline_impl.hh:92
Definition: CirculatorsT.hh:305
Definition: CirculatorsT.hh:483
Handle for a vertex entity.
Definition: Handles.hh:121
Handle for a halfedge entity.
Definition: Handles.hh:128
Handle for a edge entity.
Definition: Handles.hh:135
Handle for a face entity.
Definition: Handles.hh:142
Definition: IteratorsT.hh:82
Generic class for vertex/halfedge/edge/face ranges.
Definition: PolyConnectivity_inline_impl.hh:76
Definition: PolyConnectivity.hh:77
Definition: PolyConnectivity.hh:96
Connectivity Class for polygonal meshes.
Definition: PolyConnectivity.hh:115
const Halfedge & deref(HalfedgeHandle _h) const
Get item from handle.
Definition: PolyConnectivity.hh:1778
VertexVertexCWIter VVCWIter
Alias typedef.
Definition: PolyConnectivity.hh:461
ConstVertexVertexIter CVVIter
Alias typedef.
Definition: PolyConnectivity.hh:489
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_begin, &PolyConnectivity::cvv_end > > ConstVertexVertexRange
Definition: PolyConnectivity.hh:1268
EdgeIter edges_end()
End iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:338
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_begin, &PolyConnectivity::cfv_end > > ConstFaceVertexRange
Definition: PolyConnectivity.hh:1273
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeCWIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_cwbegin, &PolyConnectivity::cfh_cwend > > ConstFaceHalfedgeCWRange
Definition: PolyConnectivity.hh:1288
EdgeIter ConstEdgeIter
Linear iterator.
Definition: PolyConnectivity.hh:146
EdgeIter EIter
Alias typedef.
Definition: PolyConnectivity.hh:452
VertexVertexIter VVIter
Alias typedef.
Definition: PolyConnectivity.hh:460
Iterators::GenericCirculatorT< VertexEdgeTraits, false > VertexEdgeCCWIter
Enumerates incident edges in a counter clockwise fashion.
Definition: PolyConnectivity.hh:258
VertexVertexCCWIter VVCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:462
ConstVertexIHalfedgeCCWIter CVIHCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:497
HalfedgeLoopCWIter ConstHalfedgeLoopCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:433
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceCWIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_cwbegin, &PolyConnectivity::cff_cwend > > ConstFaceFaceCWRange
Definition: PolyConnectivity.hh:1290
Edge & deref(EdgeHandle _h)
Get item from handle.
Definition: PolyConnectivity.hh:1781
HalfedgeIter halfedges_end()
End iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:326
ConstFaceHalfedgeCCWIter CFHCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:509
VertexHandle VHandle
Alias typedef.
Definition: PolyConnectivity.hh:445
ConstFaceVertexCCWIter CFVCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:506
PolyConnectivity This
Invalid handle.
Definition: PolyConnectivity.hh:129
Iterators::GenericIteratorT< This, This::HalfedgeHandle, ArrayKernel, &ArrayKernel::has_halfedge_status, &ArrayKernel::n_halfedges > HalfedgeIter
Linear iterator.
Definition: PolyConnectivity.hh:140
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeCCWIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_ccwbegin, &PolyConnectivity::cfh_ccwend > > ConstFaceHalfedgeCCWRange
Definition: PolyConnectivity.hh:1299
ConstVertexFaceCCWIter CVFCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:503
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexCCWIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_ccwbegin, &PolyConnectivity::cvv_ccwend > > ConstVertexVertexCCWRange
Definition: PolyConnectivity.hh:1293
VertexIHalfedgeIter ConstVertexIHalfedgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:285
VertexFaceCCWIter VFCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:474
FaceFaceIter ConstFaceFaceIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:378
FaceEdgeCWIter FECWIter
Alias typedef.
Definition: PolyConnectivity.hh:482
Iterators::GenericCirculatorT< VertexVertexTraits, false > VertexVertexCCWIter
Enumerates 1-ring vertices in a counter clockwise fashion.
Definition: PolyConnectivity.hh:180
VertexIter vertices_sbegin()
Begin iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:357
HalfedgeIter halfedges_sbegin()
Begin iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:363
FaceVertexCCWIter FVCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:477
ConstVertexIter CVIter
Alias typedef.
Definition: PolyConnectivity.hh:455
ConstHalfedgeIter CHIter
Alias typedef.
Definition: PolyConnectivity.hh:456
Iterators::GenericCirculatorT< FaceVertexTraits, false > FaceVertexCWIter
Enumerate incident vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:316
HalfedgeIter halfedges_begin()
Begin iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:320
static const HalfedgeHandle InvalidHalfedgeHandle
Invalid handle.
Definition: PolyConnectivity.hh:122
SmartHalfedgeHandle opposite_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
Definition: PolyConnectivity_inline_impl.hh:57
FaceFaceCWIter ConstFaceFaceCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:379
FaceHalfedgeCCWIter ConstFaceHalfedgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:374
EdgeIter edges_sbegin()
Begin iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:369
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexCWIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_cwbegin, &PolyConnectivity::cvv_cwend > > ConstVertexVertexCWRange
Definition: PolyConnectivity.hh:1282
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeCCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_ccwbegin, &PolyConnectivity::cvoh_ccwend > > ConstVertexOHalfedgeCCWRange
Definition: PolyConnectivity.hh:1295
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_sbegin, &PolyConnectivity::edges_end > > ConstEdgeRangeSkipping
Definition: PolyConnectivity.hh:1189
EdgeIter edges_begin()
Begin iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:332
ConstFaceEdgeCCWIter CFECCWIter
Alias typedef.
Definition: PolyConnectivity.hh:512
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopCCWIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_ccwbegin, &PolyConnectivity::chl_ccwend > > ConstHalfedgeLoopCCWRange
Definition: PolyConnectivity.hh:1302
ConstEdgeIter CEIter
Alias typedef.
Definition: PolyConnectivity.hh:457
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexCWIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_cwbegin, &PolyConnectivity::cfv_cwend > > ConstFaceVertexCWRange
Definition: PolyConnectivity.hh:1287
ElementRange< HandleType >::Range all_elements() const
ConstFaceVertexIter CFVIter
Alias typedef.
Definition: PolyConnectivity.hh:504
VertexVertexCCWIter ConstVertexVertexCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:281
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_begin, &PolyConnectivity::cvih_end > > ConstVertexIHalfedgeRange
Definition: PolyConnectivity.hh:1269
ConstVertexOHalfedgeIter CVOHIter
Alias typedef.
Definition: PolyConnectivity.hh:492
Iterators::GenericIteratorT< This, This::VertexHandle, ArrayKernel, &ArrayKernel::has_vertex_status, &ArrayKernel::n_vertices > VertexIter
Linear iterator.
Definition: PolyConnectivity.hh:139
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_begin, &PolyConnectivity::faces_end > > ConstFaceRange
Definition: PolyConnectivity.hh:1194
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceCCWIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_ccwbegin, &PolyConnectivity::cff_ccwend > > ConstFaceFaceCCWRange
Definition: PolyConnectivity.hh:1301
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_cwbegin, &PolyConnectivity::cvih_cwend > > ConstVertexIHalfedgeCWRange
Definition: PolyConnectivity.hh:1283
Iterators::GenericCirculatorT_DEPRECATED< VertexOppositeHalfedgeTraits > VertexIHalfedgeIter
Enumerates incoming half edges in a clockwise fashion.
Definition: PolyConnectivity.hh:213
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_begin, &PolyConnectivity::vertices_end > > ConstVertexRange
Definition: PolyConnectivity.hh:1164
FaceFaceCCWIter ConstFaceFaceCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:380
ConstFaceEdgeIter CFEIter
Alias typedef.
Definition: PolyConnectivity.hh:510
PolyConnectivity()
Alias typedef.
Definition: PolyConnectivity.hh:523
VertexOHalfedgeCWIter ConstVertexOHalfedgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:283
FaceEdgeCWIter ConstFaceEdgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:376
ConstVertexIHalfedgeCWIter CVIHCWIter
Alias typedef.
Definition: PolyConnectivity.hh:496
ConstFaceHalfedgeIter CFHIter
Alias typedef.
Definition: PolyConnectivity.hh:507
ConstFaceVertexCWIter CFVCWIter
Alias typedef.
Definition: PolyConnectivity.hh:505
VertexFaceIter VFIter
Alias typedef.
Definition: PolyConnectivity.hh:472
Iterators::GenericCirculatorT_DEPRECATED< VertexVertexTraits > VertexVertexIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:174
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_cwbegin, &PolyConnectivity::cvoh_cwend > > ConstVertexOHalfedgeCWRange
Definition: PolyConnectivity.hh:1284
HalfedgeLoopCCWIter ConstHalfedgeLoopCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:434
ConstVertexOHalfedgeCCWIter CVOHCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:494
HalfedgeIter HIter
Alias typedef.
Definition: PolyConnectivity.hh:451
VertexEdgeIter ConstVertexEdgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:291
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > FaceHalfedgeIter
Enumerate incident half edges in a counter clockwise fashion.
Definition: PolyConnectivity.hh:321
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_begin, &PolyConnectivity::cfe_end > > ConstFaceEdgeRange
Definition: PolyConnectivity.hh:1275
Iterators::GenericCirculatorT_DEPRECATED< VertexHalfedgeTraits > VertexOHalfedgeIter
Enumerates outgoing half edges in a clockwise fashion.
Definition: PolyConnectivity.hh:194
HalfedgeLoopIter ConstHalfedgeLoopIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:432
HalfedgeHandle HHandle
Alias typedef.
Definition: PolyConnectivity.hh:446
static bool is_triangles()
Alias typedef.
Definition: PolyConnectivity.hh:526
ConstFaceFaceCWIter CFFCWIter
Alias typedef.
Definition: PolyConnectivity.hh:514
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_begin, &PolyConnectivity::chl_end > > ConstHalfedgeLoopRange
Definition: PolyConnectivity.hh:1280
VertexIHalfedgeIter VIHIter
Alias typedef.
Definition: PolyConnectivity.hh:466
EdgeVertexIter ConstEdgeVertexIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:425
VertexFaceIter ConstVertexFaceIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:288
VertexIter VIter
Alias typedef.
Definition: PolyConnectivity.hh:450
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeCWIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_cwbegin, &PolyConnectivity::cve_cwend > > ConstVertexEdgeCWRange
Definition: PolyConnectivity.hh:1285
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeCCWIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_ccwbegin, &PolyConnectivity::cve_ccwend > > ConstVertexEdgeCCWRange
Definition: PolyConnectivity.hh:1296
VertexIter ConstVertexIter
Linear iterator.
Definition: PolyConnectivity.hh:144
Iterators::GenericIteratorT< This, This::FaceHandle, ArrayKernel, &ArrayKernel::has_face_status, &ArrayKernel::n_faces > FaceIter
Linear iterator.
Definition: PolyConnectivity.hh:142
Iterators::GenericCirculatorT_DEPRECATED< VertexEdgeTraits > VertexEdgeIter
Enumerates incident edges in a clockwise fashion.
Definition: PolyConnectivity.hh:253
FaceVertexIter ConstFaceVertexIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:369
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeCWIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_cwbegin, &PolyConnectivity::cfe_cwend > > ConstFaceEdgeCWRange
Definition: PolyConnectivity.hh:1289
VertexIHalfedgeCCWIter ConstVertexIHalfedgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:287
ConstVertexEdgeCWIter CVECWIter
Alias typedef.
Definition: PolyConnectivity.hh:499
VertexFaceCWIter ConstVertexFaceCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:289
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_begin, &PolyConnectivity::cve_end > > ConstVertexEdgeRange
Definition: PolyConnectivity.hh:1271
ConstEdgeVertexIter CEVIter
Alias typedef.
Definition: PolyConnectivity.hh:516
EdgeFaceIter ConstEdgeFaceIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:427
FaceEdgeCCWIter FECWWIter
Alias typedef.
Definition: PolyConnectivity.hh:483
Iterators::GenericCirculatorT_DEPRECATED< EdgeHalfedgeTraits > EdgeHalfedgeIter
Enumerate the halfedges of an edge.
Definition: PolyConnectivity.hh:410
FaceHalfedgeIter FHIter
Alias typedef.
Definition: PolyConnectivity.hh:478
EdgeHalfedgeIter EHIter
Alias typedef.
Definition: PolyConnectivity.hh:486
ElementRange< HandleType >::RangeSkipping elements() const
bool is_boundary(EdgeHandle _eh) const
Is the edge a boundary edge?
Definition: PolyConnectivity.hh:1579
const Edge & deref(EdgeHandle _h) const
Get item from handle.
Definition: PolyConnectivity.hh:1780
FaceIter faces_sbegin()
Begin iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:375
virtual ~PolyConnectivity()
Alias typedef.
Definition: PolyConnectivity.hh:524
Iterators::GenericCirculatorT< VertexHalfedgeTraits, false > VertexOHalfedgeCCWIter
Enumerates outgoing half edges in a counter clockwise fashion.
Definition: PolyConnectivity.hh:200
Iterators::GenericCirculatorT_DEPRECATED< VertexFaceTraits > VertexFaceIter
Enumerates incident faces in a clockwise fashion.
Definition: PolyConnectivity.hh:233
VertexEdgeCWIter VECWIter
Alias typedef.
Definition: PolyConnectivity.hh:470
static const FaceHandle InvalidFaceHandle
Invalid handle.
Definition: PolyConnectivity.hh:126
Iterators::GenericIteratorT< This, This::EdgeHandle, ArrayKernel, &ArrayKernel::has_edge_status, &ArrayKernel::n_edges > EdgeIter
Linear iterator.
Definition: PolyConnectivity.hh:141
ConstVertexEdgeCCWIter CVECCWIter
Alias typedef.
Definition: PolyConnectivity.hh:500
EdgeHalfedgeIter ConstEdgeHalfedgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:426
EdgeVertexIter EVIter
Alias typedef.
Definition: PolyConnectivity.hh:485
ConstVertexVertexCCWIter CVVCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:491
FaceHalfedgeCCWIter FHCWWIter
Alias typedef.
Definition: PolyConnectivity.hh:480
bool is_boundary(VertexHandle _vh) const
Is vertex _vh a boundary vertex ?
Definition: PolyConnectivity.hh:1596
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > HalfedgeLoopCCWIter
Identical to FaceHalfedgeIter.
Definition: PolyConnectivity.hh:277
Iterators::GenericCirculatorT< FaceFaceTraits, true > FaceFaceCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:362
FaceEdgeCCWIter ConstFaceEdgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:377
ConstVertexVertexCWIter CVVCWIter
Alias typedef.
Definition: PolyConnectivity.hh:490
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > HalfedgeLoopIter
Identical to FaceHalfedgeIter.
Definition: PolyConnectivity.hh:272
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_begin, &PolyConnectivity::edges_end > > ConstEdgeRange
Definition: PolyConnectivity.hh:1184
ConstEdgeFaceIter CEFIter
Alias typedef.
Definition: PolyConnectivity.hh:518
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeCCWIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_ccwbegin, &PolyConnectivity::cfe_ccwend > > ConstFaceEdgeCCWRange
Definition: PolyConnectivity.hh:1300
VertexOHalfedgeCCWIter ConstVertexOHalfedgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:284
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_sbegin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRangeSkipping
Definition: PolyConnectivity.hh:1179
ConstVertexOHalfedgeCWIter CVOHCWIter
Alias typedef.
Definition: PolyConnectivity.hh:493
FaceHalfedgeIter ConstFaceHalfedgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:372
VertexOHalfedgeCWIter VOHCWIter
Alias typedef.
Definition: PolyConnectivity.hh:464
Iterators::GenericCirculatorT_DEPRECATED< FaceVertexTraits > FaceVertexIter
Enumerate incident vertices in a counter clockwise fashion.
Definition: PolyConnectivity.hh:310
FaceVertexCWIter FVCWIter
Alias typedef.
Definition: PolyConnectivity.hh:476
Face & deref(FaceHandle _h)
Get item from handle.
Definition: PolyConnectivity.hh:1783
EdgeFaceIter EFIter
Alias typedef.
Definition: PolyConnectivity.hh:487
static const VertexHandle InvalidVertexHandle
Invalid handle.
Definition: PolyConnectivity.hh:120
VertexIter vertices_begin()
Begin iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:308
ConstFaceIter CFIter
Alias typedef.
Definition: PolyConnectivity.hh:458
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceCWIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_cwbegin, &PolyConnectivity::cvf_cwend > > ConstVertexFaceCWRange
Definition: PolyConnectivity.hh:1286
Iterators::GenericCirculatorT< VertexFaceTraits, true > VertexFaceCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:234
HalfedgeIter ConstHalfedgeIter
Linear iterator.
Definition: PolyConnectivity.hh:145
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, false > VertexIHalfedgeCCWIter
Enumerates incoming half edges in a counter clockwise fashion.
Definition: PolyConnectivity.hh:219
FaceVertexCCWIter ConstFaceVertexCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:371
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_begin, &PolyConnectivity::cvoh_end > > ConstVertexOHalfedgeRange
Definition: PolyConnectivity.hh:1270
static const EdgeHandle InvalidEdgeHandle
Invalid handle.
Definition: PolyConnectivity.hh:124
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeHalfedgeIter, EdgeHandle, HalfedgeHandle, &PolyConnectivity::ceh_begin, &PolyConnectivity::ceh_end > > ConstEdgeHalfedgeRange
Definition: PolyConnectivity.hh:1278
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_sbegin, &PolyConnectivity::vertices_end > > ConstVertexRangeSkipping
Definition: PolyConnectivity.hh:1169
Halfedge & deref(HalfedgeHandle _h)
Get item from handle.
Definition: PolyConnectivity.hh:1779
Iterators::GenericCirculatorT< VertexEdgeTraits, true > VertexEdgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:254
FaceEdgeIter FEIter
Alias typedef.
Definition: PolyConnectivity.hh:481
FaceEdgeIter ConstFaceEdgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:375
ConstVertexEdgeIter CVEIter
Alias typedef.
Definition: PolyConnectivity.hh:498
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > FaceHalfedgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:322
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, true > VertexIHalfedgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:214
FaceIter faces_end()
End iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:350
void assign_connectivity(const PolyConnectivity &_other)
assign_connectivity() method.
Definition: PolyConnectivity.hh:531
VertexOHalfedgeCCWIter VOHCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:465
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_begin, &PolyConnectivity::cvf_end > > ConstVertexFaceRange
Definition: PolyConnectivity.hh:1272
EdgeHandle EHandle
Alias typedef.
Definition: PolyConnectivity.hh:447
FaceHandle FHandle
Alias typedef.
Definition: PolyConnectivity.hh:448
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeCCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_ccwbegin, &PolyConnectivity::cvih_ccwend > > ConstVertexIHalfedgeCCWRange
Definition: PolyConnectivity.hh:1294
Iterators::GenericCirculatorT< FaceVertexTraits, true > FaceVertexCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:311
ConstFaceEdgeCWIter CFECWIter
Alias typedef.
Definition: PolyConnectivity.hh:511
ConstFaceFaceIter CFFIter
Alias typedef.
Definition: PolyConnectivity.hh:513
VertexFaceCCWIter ConstVertexFaceCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:290
ConstEdgeHalfedgeIter CEHIter
Alias typedef.
Definition: PolyConnectivity.hh:517
VertexOHalfedgeIter ConstVertexOHalfedgeIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:282
VertexIHalfedgeCWIter VIHICWter
Alias typedef.
Definition: PolyConnectivity.hh:467
VertexEdgeIter VEIter
Alias typedef.
Definition: PolyConnectivity.hh:469
FaceIter ConstFaceIter
Linear iterator.
Definition: PolyConnectivity.hh:147
VertexOHalfedgeIter VOHIter
Alias typedef.
Definition: PolyConnectivity.hh:463
VertexIHalfedgeCWIter ConstVertexIHalfedgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:286
VertexEdgeCWIter ConstVertexEdgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:292
Iterators::GenericCirculatorT< VertexVertexTraits, true > VertexVertexCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:175
ConstVertexFaceCWIter CVFCWIter
Alias typedef.
Definition: PolyConnectivity.hh:502
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeFaceIter, EdgeHandle, FaceHandle, &PolyConnectivity::cef_begin, &PolyConnectivity::cef_end > > ConstEdgeFaceRange
Definition: PolyConnectivity.hh:1279
bool is_boundary(HalfedgeHandle _heh) const
Check if the halfedge is at the boundary.
Definition: PolyConnectivity.hh:1568
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_begin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRange
Definition: PolyConnectivity.hh:1174
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > FaceHalfedgeCWIter
Enumerate incident half edges in a clockwise fashion.
Definition: PolyConnectivity.hh:327
VertexVertexCWIter ConstVertexVertexCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:280
VertexEdgeCCWIter ConstVertexEdgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:293
VertexVertexIter ConstVertexVertexIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:279
VertexFaceCWIter VFCWIter
Alias typedef.
Definition: PolyConnectivity.hh:473
Iterators::GenericCirculatorT_DEPRECATED< FaceFaceTraits > FaceFaceIter
Enumerate adjacent faces in a counter clockwise fashion.
Definition: PolyConnectivity.hh:361
FaceHalfedgeCWIter ConstFaceHalfedgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:373
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_begin, &PolyConnectivity::cfh_end > > ConstFaceHalfedgeRange
Definition: PolyConnectivity.hh:1274
Iterators::GenericCirculatorT_DEPRECATED< EdgeFaceTraits > EdgeFaceIter
Enumerate faces incident to an edge.
Definition: PolyConnectivity.hh:423
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeVertexIter, EdgeHandle, VertexHandle, &PolyConnectivity::cev_begin, &PolyConnectivity::cev_end > > ConstEdgeVertexRange
Definition: PolyConnectivity.hh:1277
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > HalfedgeLoopCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:273
const Vertex & deref(VertexHandle _h) const
Get item from handle.
Definition: PolyConnectivity.hh:1776
Iterators::GenericCirculatorT< FaceFaceTraits, false > FaceFaceCWIter
Enumerate adjacent faces in a clockwise fashion.
Definition: PolyConnectivity.hh:367
Iterators::GenericCirculatorT_DEPRECATED< FaceEdgeTraits > FaceEdgeIter
Enumerate incident edges in a counter clockwise fashion.
Definition: PolyConnectivity.hh:341
VertexIter vertices_end()
End iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:314
Iterators::GenericCirculatorT< FaceEdgeTraits, false > FaceEdgeCWIter
Enumerate incident edges in a clockwise fashion.
Definition: PolyConnectivity.hh:347
Vertex & deref(VertexHandle _h)
Get item from handle.
Definition: PolyConnectivity.hh:1777
Iterators::GenericCirculatorT_DEPRECATED< EdgeVertexTraits > EdgeVertexIter
Enumerate vertices incident to an edge.
Definition: PolyConnectivity.hh:397
Iterators::GenericCirculatorT< VertexFaceTraits, false > VertexFaceCCWIter
Enumerates incident faces in a counter clockwise fashion.
Definition: PolyConnectivity.hh:239
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_begin, &PolyConnectivity::cff_end > > ConstFaceFaceRange
Definition: PolyConnectivity.hh:1276
ConstFaceHalfedgeCWIter CFHCWIter
Alias typedef.
Definition: PolyConnectivity.hh:508
const Face & deref(FaceHandle _h) const
Get item from handle.
Definition: PolyConnectivity.hh:1782
FaceIter faces_begin()
Begin iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:344
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopCWIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_cwbegin, &PolyConnectivity::chl_cwend > > ConstHalfedgeLoopCWRange
Definition: PolyConnectivity.hh:1291
FaceVertexIter FVIter
Alias typedef.
Definition: PolyConnectivity.hh:475
FaceFaceIter FFIter
Alias typedef.
Definition: PolyConnectivity.hh:484
FaceHalfedgeCWIter FHCWIter
Alias typedef.
Definition: PolyConnectivity.hh:479
Iterators::GenericCirculatorT< FaceEdgeTraits, true > FaceEdgeCCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:342
ConstFaceFaceCCWIter CFFCCWIter
Alias typedef.
Definition: PolyConnectivity.hh:515
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceCCWIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_ccwbegin, &PolyConnectivity::cvf_ccwend > > ConstVertexFaceCCWRange
Definition: PolyConnectivity.hh:1297
VertexIHalfedgeCCWIter VIHICCWter
Alias typedef.
Definition: PolyConnectivity.hh:468
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_sbegin, &PolyConnectivity::faces_end > > ConstFaceRangeSkipping
Definition: PolyConnectivity.hh:1199
ConstVertexIHalfedgeIter CVIHIter
Alias typedef.
Definition: PolyConnectivity.hh:495
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexCCWIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_ccwbegin, &PolyConnectivity::cfv_ccwend > > ConstFaceVertexCCWRange
Definition: PolyConnectivity.hh:1298
VertexEdgeCCWIter VECCWIter
Alias typedef.
Definition: PolyConnectivity.hh:471
FaceVertexCWIter ConstFaceVertexCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:370
FaceIter FIter
Alias typedef.
Definition: PolyConnectivity.hh:453
Iterators::GenericCirculatorT< VertexHalfedgeTraits, true > VertexOHalfedgeCWIter
Enumerates 1-ring vertices in a clockwise fashion.
Definition: PolyConnectivity.hh:195
ConstVertexFaceIter CVFIter
Alias typedef.
Definition: PolyConnectivity.hh:501
Definition: PolyConnectivity.hh:163
Definition: PolyConnectivity.hh:184
Definition: PolyConnectivity.hh:203
Definition: PolyConnectivity.hh:223
Definition: PolyConnectivity.hh:243
Definition: PolyConnectivity.hh:262
Definition: PolyConnectivity.hh:300
Definition: PolyConnectivity.hh:331
Definition: PolyConnectivity.hh:351
Definition: PolyConnectivity.hh:387
Definition: PolyConnectivity.hh:400
Definition: PolyConnectivity.hh:413
Definition: PolyConnectivity.hh:1203
Smart version of VertexHandle contains a pointer to the corresponding mesh and allows easier access t...
Definition: SmartHandles.hh:110
Definition: SmartHandles.hh:170
Definition: SmartHandles.hh:197
Definition: SmartHandles.hh:228