42#ifndef OPENMESH_POLYCONNECTIVITY_INTERFACE_INCLUDE
43#error Do not include this directly, include instead PolyConnectivity.hh
46#include <OpenMesh/Core/Mesh/PolyConnectivity.hh>
47#include <OpenMesh/Core/Mesh/IteratorsT.hh>
48#include <OpenMesh/Core/Mesh/CirculatorsT.hh>
75template <
typename RangeTraitT>
78 typedef typename RangeTraitT::ITER_TYPE iterator;
79 typedef typename RangeTraitT::ITER_TYPE const_iterator;
81 explicit EntityRange(
typename RangeTraitT::CONTAINER_TYPE &container) : container_(container) {}
82 typename RangeTraitT::ITER_TYPE begin()
const {
return RangeTraitT::begin(container_); }
83 typename RangeTraitT::ITER_TYPE end()
const {
return RangeTraitT::end(container_); }
86 typename RangeTraitT::CONTAINER_TYPE &container_;
90template <
typename CirculatorRangeTraitT>
92class CirculatorRange :
public SmartRangeT<CirculatorRange<CirculatorRangeTraitT>, typename SmartHandle<typename CirculatorRangeTraitT::TO_ENTITYE_TYPE>::type>{
94 typedef typename CirculatorRangeTraitT::ITER_TYPE ITER_TYPE;
95 typedef typename CirculatorRangeTraitT::CENTER_ENTITY_TYPE CENTER_ENTITY_TYPE;
96 typedef typename CirculatorRangeTraitT::CONTAINER_TYPE CONTAINER_TYPE;
97 typedef ITER_TYPE iterator;
98 typedef ITER_TYPE const_iterator;
101 const CONTAINER_TYPE &container,
102 CENTER_ENTITY_TYPE center) :
103 container_(container), heh_()
105 auto it = CirculatorRangeTraitT::begin(container_, center);
110 const CONTAINER_TYPE &container,
112 container_(container), heh_(heh) {}
114 ITER_TYPE begin()
const {
return CirculatorRangeTraitT::begin(container_, heh_, 1); }
115 ITER_TYPE end()
const {
return CirculatorRangeTraitT::end(container_, heh_, 1); }
118 const CONTAINER_TYPE &container_;
size_t n_vertices() const override
size_t n_edges() const override
VertexHandle new_vertex()
Add a new vertex.
size_t n_faces() const override
size_t n_halfedges() const override
Generic class for iterator ranges.
Generic class for vertex/halfedge/edge/face ranges.
ConstFaceHalfedgeCWRange fh_cw_range(FaceHandle _fh) const
ConstVertexVertexCWIter cvv_cwbegin(VertexHandle _vh) const
const vertex circulator cw
FaceHalfedgeCWIter fh_cwiter(FaceHandle _fh)
face - halfedge circulator cw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_begin, &PolyConnectivity::cvv_end > > ConstVertexVertexRange
EdgeIter edges_end()
End iterator for edges.
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_begin, &PolyConnectivity::cfv_end > > ConstFaceVertexRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeCWIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_cwbegin, &PolyConnectivity::cfh_cwend > > ConstFaceHalfedgeCWRange
VertexVertexIter vv_begin(VertexHandle _vh)
vertex - vertex circulator
EdgeIter ConstEdgeIter
Linear iterator.
ConstFaceFaceCCWIter cff_ccwend(FaceHandle _fh) const
const face - face circulator
VertexVertexCCWIter vv_ccwiter(VertexHandle _vh)
vertex - vertex circulator ccw
VertexVertexIter vv_end(VertexHandle _vh)
vertex - vertex circulator
Iterators::GenericCirculatorT< VertexEdgeTraits, false > VertexEdgeCCWIter
FaceEdgeCWIter fe_cwiter(FaceHandle _fh)
face - edge circulator cw
HalfedgeLoopCWIter ConstHalfedgeLoopCWIter
FaceFaceCCWIter ff_ccwiter(FaceHandle _fh)
face - face circulator ccw
EdgeVertexIter ev_begin(EdgeHandle _eh)
edge - vertex circulator
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceCWIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_cwbegin, &PolyConnectivity::cff_cwend > > ConstFaceFaceCWRange
HalfedgeIter halfedges_end()
End iterator for halfedges.
VertexFaceIter vf_begin(VertexHandle _vh)
vertex - face circulator
ConstFaceEdgeCWIter cfe_cwend(FaceHandle _fh) const
const face - edge circulator cw
ConstFaceFaceIter cff_end(FaceHandle _fh) const
const face - face circulator
ConstEdgeFaceRange ef_range(EdgeHandle _eh) const
FaceFaceCWIter ff_cwiter(FaceHandle _fh)
face - face circulator cw
VertexIHalfedgeCCWIter vih_ccwend(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
ConstHalfedgeLoopRange hl_range(HalfedgeHandle _heh) const
VertexFaceCWIter vf_cwbegin(VertexHandle _vh)
vertex - face circulator cw
Iterators::GenericIteratorT< This, This::HalfedgeHandle, ArrayKernel, &ArrayKernel::has_halfedge_status, &ArrayKernel::n_halfedges > HalfedgeIter
Linear iterator.
FaceEdgeCCWIter fe_ccwbegin(FaceHandle _fh)
face - edge circulator ccw
ConstVertexVertexCWRange vv_cw_range(VertexHandle _vh) const
ConstVertexVertexIter cvv_iter(VertexHandle _vh) const
const vertex circulator
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeCCWIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_ccwbegin, &PolyConnectivity::cfh_ccwend > > ConstFaceHalfedgeCCWRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexCCWIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_ccwbegin, &PolyConnectivity::cvv_ccwend > > ConstVertexVertexCCWRange
FaceHalfedgeCWIter fh_cwend(FaceHandle _fh)
face - halfedge circulator cw
VertexIHalfedgeIter ConstVertexIHalfedgeIter
ConstFaceEdgeIter cfe_end(FaceHandle _fh) const
const face - edge circulator
VertexEdgeCWIter ve_cwbegin(VertexHandle _vh)
vertex - edge circulator cw
ConstVertexIHalfedgeCCWIter cvih_ccwiter(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
FaceFaceIter ConstFaceFaceIter
Iterators::GenericCirculatorT< VertexVertexTraits, false > VertexVertexCCWIter
VertexIter vertices_sbegin()
Begin iterator for vertices.
FaceHalfedgeIter fh_end(FaceHandle _fh)
face - halfedge circulator
VertexFaceCWIter vf_cwiter(VertexHandle _vh)
vertex - face circulator cw
ConstEdgeFaceIter cef_begin(EdgeHandle _eh) const
const edge - face circulator
HalfedgeIter halfedges_sbegin()
Begin iterator for halfedges.
ConstFaceHalfedgeIter cfh_end(FaceHandle _fh) const
const face - halfedge circulator
ConstFaceFaceCWIter cff_cwend(FaceHandle _fh) const
const face - face circulator
Iterators::GenericCirculatorT< FaceVertexTraits, false > FaceVertexCWIter
FaceHalfedgeCCWIter fh_ccwbegin(FaceHandle _fh)
face - halfedge circulator ccw
HalfedgeLoopCCWIter hl_ccwbegin(HalfedgeHandle _heh)
halfedge circulator ccw
HalfedgeIter halfedges_begin()
Begin iterator for halfedges.
SmartHalfedgeHandle opposite_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
ConstFaceHalfedgeIter cfh_iter(FaceHandle _fh) const
const face - halfedge circulator
FaceFaceCWIter ConstFaceFaceCWIter
ConstFaceFaceCCWIter cff_ccwbegin(FaceHandle _fh) const
const face - face circulator ccw
ConstFaceHalfedgeCWIter cfh_cwiter(FaceHandle _fh) const
const face - halfedge circulator cw
FaceHalfedgeCCWIter ConstFaceHalfedgeCCWIter
EdgeIter edges_sbegin()
Begin iterator for edges.
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexCWIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_cwbegin, &PolyConnectivity::cvv_cwend > > ConstVertexVertexCWRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeCCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_ccwbegin, &PolyConnectivity::cvoh_ccwend > > ConstVertexOHalfedgeCCWRange
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_sbegin, &PolyConnectivity::edges_end > > ConstEdgeRangeSkipping
VertexIHalfedgeCWIter vih_cwend(VertexHandle _vh)
vertex - incoming halfedge circulator cw
EdgeIter edges_begin()
Begin iterator for edges.
FaceVertexCWIter fv_cwiter(FaceHandle _fh)
face - vertex circulator cw
ConstFaceFaceRange ff_range(FaceHandle _fh) const
ConstVertexIHalfedgeCWIter cvih_cwend(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
static SmartEdgeHandle s_edge_handle(SmartHalfedgeHandle _heh)
returns the face handle of the opposite halfedge
ConstVertexEdgeCCWIter cve_ccwbegin(VertexHandle _vh) const
const vertex - edge circulator ccw
ConstVertexVertexCWIter cvv_cwend(VertexHandle _vh) const
const vertex circulator cw
ConstVertexOHalfedgeRange voh_range(VertexHandle _vh) const
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopCCWIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_ccwbegin, &PolyConnectivity::chl_ccwend > > ConstHalfedgeLoopCCWRange
FaceVertexIter fv_begin(FaceHandle _fh)
face - vertex circulator
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexCWIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_cwbegin, &PolyConnectivity::cfv_cwend > > ConstFaceVertexCWRange
VertexEdgeCWIter ve_cwend(VertexHandle _vh)
vertex - edge circulator cw
FaceVertexCCWIter fv_ccwiter(FaceHandle _fh)
face - vertex circulator ccw
ConstVertexVertexCCWIter cvv_ccwbegin(VertexHandle _vh) const
const vertex circulator ccw
EdgeVertexIter ev_iter(EdgeHandle _eh)
edge - vertex circulator
ConstEdgeVertexIter cev_begin(EdgeHandle _eh) const
const edge - vertex circulator
HalfedgeLoopCWIter hl_cwbegin(HalfedgeHandle _heh)
halfedge circulator
FaceFaceCWIter ff_cwend(FaceHandle _fh)
face - face circulator cw
VertexVertexCCWIter ConstVertexVertexCCWIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_begin, &PolyConnectivity::cvih_end > > ConstVertexIHalfedgeRange
FaceFaceIter ff_iter(FaceHandle _fh)
face - face circulator
ConstHalfedgeLoopIter chl_end(HalfedgeHandle _heh) const
const face - face circulator
FaceVertexCWIter fv_cwend(FaceHandle _fh)
face - vertex circulator cw
ConstHalfedgeLoopCWIter chl_cwend(HalfedgeHandle _heh) const
const face - face circulator cw
Iterators::GenericIteratorT< This, This::VertexHandle, ArrayKernel, &ArrayKernel::has_vertex_status, &ArrayKernel::n_vertices > VertexIter
Linear iterator.
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_begin, &PolyConnectivity::faces_end > > ConstFaceRange
VertexOHalfedgeCWIter voh_cwiter(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
ConstHalfedgeLoopCCWIter chl_ccwend(HalfedgeHandle _heh) const
const face - face circulator ccw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceCCWIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_ccwbegin, &PolyConnectivity::cff_ccwend > > ConstFaceFaceCCWRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_cwbegin, &PolyConnectivity::cvih_cwend > > ConstVertexIHalfedgeCWRange
ConstHalfedgeLoopCCWRange hl_ccw_range(HalfedgeHandle _heh) const
ConstFaceHalfedgeCCWIter cfh_ccwbegin(FaceHandle _fh) const
const face - halfedge circulator ccw
HalfedgeLoopIter hl_begin(HalfedgeHandle _heh)
halfedge circulator
Iterators::GenericCirculatorT_DEPRECATED< VertexOppositeHalfedgeTraits > VertexIHalfedgeIter
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_begin, &PolyConnectivity::vertices_end > > ConstVertexRange
FaceFaceCCWIter ConstFaceFaceCCWIter
VertexOHalfedgeCWIter ConstVertexOHalfedgeCWIter
FaceEdgeCWIter ConstFaceEdgeCWIter
ConstFaceEdgeRange fe_range(FaceHandle _fh) const
VertexOHalfedgeCCWIter voh_ccwiter(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
Iterators::GenericCirculatorT_DEPRECATED< VertexVertexTraits > VertexVertexIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_cwbegin, &PolyConnectivity::cvoh_cwend > > ConstVertexOHalfedgeCWRange
ConstFaceEdgeCWIter cfe_cwiter(FaceHandle _fh) const
const face - edge circulator cw
HalfedgeLoopCCWIter ConstHalfedgeLoopCCWIter
SmartHalfedgeHandle prev_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
ConstVertexFaceCWIter cvf_cwiter(VertexHandle _vh) const
const vertex - face circulator cw
FaceVertexCCWIter fv_ccwbegin(FaceHandle _fh)
face - vertex circulator ccw
ConstFaceVertexIter cfv_iter(FaceHandle _fh) const
const face - vertex circulator
VertexOHalfedgeIter voh_begin(VertexHandle _vh)
vertex - outgoing halfedge circulator
VertexEdgeIter ConstVertexEdgeIter
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > FaceHalfedgeIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_begin, &PolyConnectivity::cfe_end > > ConstFaceEdgeRange
Iterators::GenericCirculatorT_DEPRECATED< VertexHalfedgeTraits > VertexOHalfedgeIter
ConstFaceEdgeCCWIter cfe_ccwend(FaceHandle _fh) const
const face - edge circulator ccw
ConstFaceHalfedgeIter cfh_begin(FaceHandle _fh) const
const face - halfedge circulator
ConstFaceFaceCWRange ff_cw_range(FaceHandle _fh) const
HalfedgeLoopIter ConstHalfedgeLoopIter
ConstVertexIHalfedgeCWRange vih_cw_range(VertexHandle _vh) const
ConstFaceFaceIter cff_iter(FaceHandle _fh) const
const face - face circulator
ConstVertexFaceCCWIter cvf_ccwbegin(VertexHandle _vh) const
const vertex - face circulator ccw
ConstEdgeHalfedgeIter ceh_end(EdgeHandle _eh) const
const edge - halfedge circulator
ConstFaceVertexCCWIter cfv_ccwiter(FaceHandle _fh) const
const face - vertex circulator ccw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_begin, &PolyConnectivity::chl_end > > ConstHalfedgeLoopRange
ConstVertexEdgeCCWRange ve_ccw_range(VertexHandle _vh) const
EdgeVertexIter ConstEdgeVertexIter
ConstEdgeHalfedgeIter ceh_begin(EdgeHandle _eh) const
const edge - halfedge circulator
ConstVertexOHalfedgeCCWIter cvoh_ccwiter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
VertexFaceIter ConstVertexFaceIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeCWIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_cwbegin, &PolyConnectivity::cve_cwend > > ConstVertexEdgeCWRange
EdgeFaceIter ef_begin(EdgeHandle _eh)
edge - face circulator
ConstHalfedgeRange all_halfedges() const
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeCCWIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_ccwbegin, &PolyConnectivity::cve_ccwend > > ConstVertexEdgeCCWRange
VertexVertexCWIter vv_cwbegin(VertexHandle _vh)
vertex - vertex circulator cw
VertexIter ConstVertexIter
Linear iterator.
ConstVertexVertexCCWIter cvv_ccwiter(VertexHandle _vh) const
const vertex circulator ccw
Iterators::GenericIteratorT< This, This::FaceHandle, ArrayKernel, &ArrayKernel::has_face_status, &ArrayKernel::n_faces > FaceIter
Linear iterator.
Iterators::GenericCirculatorT_DEPRECATED< VertexEdgeTraits > VertexEdgeIter
FaceVertexIter ConstFaceVertexIter
VertexVertexIter vv_iter(VertexHandle _vh)
vertex - vertex circulator
ConstVertexOHalfedgeCWIter cvoh_cwbegin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
ConstVertexIHalfedgeCCWIter cvih_ccwbegin(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
ConstEdgeRangeSkipping edges() const
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeCWIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_cwbegin, &PolyConnectivity::cfe_cwend > > ConstFaceEdgeCWRange
EdgeVertexIter ev_end(EdgeHandle _eh)
edge - vertex circulator
VertexIHalfedgeCCWIter ConstVertexIHalfedgeCCWIter
VertexFaceCWIter ConstVertexFaceCWIter
ConstVertexFaceCWRange vf_cw_range(VertexHandle _vh) const
VertexIHalfedgeCWIter vih_cwbegin(VertexHandle _vh)
vertex - incoming halfedge circulator cw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_begin, &PolyConnectivity::cve_end > > ConstVertexEdgeRange
ConstEdgeFaceIter cef_end(EdgeHandle _eh) const
const edge - face circulator
VertexIHalfedgeIter vih_end(VertexHandle _vh)
vertex - incoming halfedge circulator
ConstVertexEdgeRange ve_range(VertexHandle _vh) const
EdgeFaceIter ConstEdgeFaceIter
ConstVertexOHalfedgeCWRange voh_cw_range(VertexHandle _vh) const
Iterators::GenericCirculatorT_DEPRECATED< EdgeHalfedgeTraits > EdgeHalfedgeIter
ConstFaceEdgeCCWIter cfe_ccwbegin(FaceHandle _fh) const
const face - edge circulator ccw
ConstVertexFaceCCWIter cvf_ccwiter(VertexHandle _vh) const
const vertex - face circulator ccw
ConstFaceEdgeCCWRange fe_ccw_range(FaceHandle _fh) const
VertexEdgeCCWIter ve_ccwiter(VertexHandle _vh)
vertex - edge circulator ccw
ConstEdgeRange all_edges() const
VertexEdgeCCWIter ve_ccwend(VertexHandle _vh)
vertex - edge circulator ccw
static SmartHalfedgeHandle s_halfedge_handle(SmartEdgeHandle _eh, unsigned int _i=0)
returns the face handle of the opposite halfedge
VertexEdgeIter ve_end(VertexHandle _vh)
vertex - edge circulator
ConstFaceEdgeCWRange fe_cw_range(FaceHandle _fh) const
ConstHalfedgeLoopCWRange hl_cw_range(HalfedgeHandle _heh) const
FaceIter faces_sbegin()
Begin iterator for faces.
Iterators::GenericCirculatorT< VertexHalfedgeTraits, false > VertexOHalfedgeCCWIter
FaceVertexIter fv_end(FaceHandle _fh)
face - vertex circulator
VertexFaceCCWIter vf_ccwend(VertexHandle _vh)
vertex - face circulator ccw
Iterators::GenericCirculatorT_DEPRECATED< VertexFaceTraits > VertexFaceIter
Iterators::GenericIteratorT< This, This::EdgeHandle, ArrayKernel, &ArrayKernel::has_edge_status, &ArrayKernel::n_edges > EdgeIter
Linear iterator.
ConstEdgeVertexRange ev_range(EdgeHandle _eh) const
ConstVertexIHalfedgeCCWRange vih_ccw_range(VertexHandle _vh) const
ConstFaceVertexIter cfv_begin(FaceHandle _fh) const
const face - vertex circulator
SmartHalfedgeHandle next_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
EdgeHalfedgeIter ConstEdgeHalfedgeIter
ConstVertexEdgeIter cve_iter(VertexHandle _vh) const
const vertex - edge circulator
ConstFaceFaceCWIter cff_cwiter(FaceHandle _fh) const
const face - face circulator cw
VertexFaceCWIter vf_cwend(VertexHandle _vh)
vertex - face circulator cw
ConstEdgeVertexIter cev_end(EdgeHandle _eh) const
const edge - vertex circulator
ConstFaceEdgeIter cfe_iter(FaceHandle _fh) const
const face - edge circulator
ConstFaceVertexCCWIter cfv_ccwend(FaceHandle _fh) const
const face - vertex circulator ccw
FaceEdgeCWIter fe_cwbegin(FaceHandle _fh)
face - edge circulator cw
VertexIHalfedgeCWIter vih_cwiter(VertexHandle _vh)
vertex - incoming halfedge circulator cw
FaceHalfedgeCCWIter fh_ccwiter(FaceHandle _fh)
face - halfedge circulator ccw
ConstFaceEdgeIter cfe_begin(FaceHandle _fh) const
const face - edge circulator
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > HalfedgeLoopCCWIter
FaceFaceCWIter ff_cwbegin(FaceHandle _fh)
face - face circulator cw
Iterators::GenericCirculatorT< FaceFaceTraits, true > FaceFaceCCWIter
SmartHalfedgeHandle ccw_rotated_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
ConstFaceFaceCCWIter cff_ccwiter(FaceHandle _fh) const
const face - face circulator
HalfedgeLoopIter hl_end(HalfedgeHandle _heh)
face - face circulator
FaceEdgeCCWIter ConstFaceEdgeCCWIter
EdgeHalfedgeIter eh_begin(EdgeHandle _eh)
edge - halfedge circulator
ConstVertexFaceCCWRange vf_ccw_range(VertexHandle _vh) const
VertexOHalfedgeCCWIter voh_ccwend(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
ConstVertexEdgeCWIter cve_cwiter(VertexHandle _vh) const
const vertex - edge circulator cw
VertexEdgeCCWIter ve_ccwbegin(VertexHandle _vh)
vertex - edge circulator ccw
VertexOHalfedgeIter voh_iter(VertexHandle _vh)
vertex - outgoing halfedge circulator
ConstFaceVertexCWIter cfv_cwiter(FaceHandle _fh) const
const face - vertex circulator cw
ConstVertexOHalfedgeCCWIter cvoh_ccwbegin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
ConstHalfedgeRangeSkipping halfedges() const
ConstVertexEdgeCWRange ve_cw_range(VertexHandle _vh) const
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > HalfedgeLoopIter
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_begin, &PolyConnectivity::edges_end > > ConstEdgeRange
FaceEdgeIter fe_begin(FaceHandle _fh)
face - edge circulator
VertexOHalfedgeCWIter voh_cwbegin(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
EdgeFaceIter ef_iter(EdgeHandle _eh)
edge - face circulator
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeCCWIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_ccwbegin, &PolyConnectivity::cfe_ccwend > > ConstFaceEdgeCCWRange
VertexOHalfedgeCCWIter ConstVertexOHalfedgeCCWIter
FaceEdgeIter fe_end(FaceHandle _fh)
face - edge circulator
FaceFaceIter ff_end(FaceHandle _fh)
face - face circulator
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_sbegin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRangeSkipping
SmartFaceHandle face_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
ConstFaceFaceIter cff_begin(FaceHandle _fh) const
const face - face circulator
FaceHalfedgeIter ConstFaceHalfedgeIter
ConstVertexFaceCCWIter cvf_ccwend(VertexHandle _vh) const
const vertex - face circulator ccw
Iterators::GenericCirculatorT_DEPRECATED< FaceVertexTraits > FaceVertexIter
ConstVertexVertexCCWIter cvv_ccwend(VertexHandle _vh) const
const vertex circulator ccw
VertexOHalfedgeIter voh_end(VertexHandle _vh)
vertex - outgoing halfedge circulator
FaceEdgeIter fe_iter(FaceHandle _fh)
face - edge circulator
VertexIter vertices_begin()
Begin iterator for vertices.
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceCWIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_cwbegin, &PolyConnectivity::cvf_cwend > > ConstVertexFaceCWRange
Iterators::GenericCirculatorT< VertexFaceTraits, true > VertexFaceCWIter
HalfedgeIter ConstHalfedgeIter
Linear iterator.
ConstVertexEdgeCCWIter cve_ccwend(VertexHandle _vh) const
const vertex - edge circulator ccw
ConstEdgeFaceIter cef_iter(EdgeHandle _eh) const
const edge - face circulator
ConstFaceVertexRange fv_range(FaceHandle _fh) const
ConstVertexIHalfedgeIter cvih_end(VertexHandle _vh) const
const vertex - incoming halfedge circulator
ConstVertexOHalfedgeCWIter cvoh_cwiter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
ConstVertexFaceIter cvf_iter(VertexHandle _vh) const
const vertex - face circulator
ConstFaceFaceCWIter cff_cwbegin(FaceHandle _fh) const
const face - face circulator cw
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, false > VertexIHalfedgeCCWIter
FaceVertexCCWIter ConstFaceVertexCCWIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_begin, &PolyConnectivity::cvoh_end > > ConstVertexOHalfedgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeHalfedgeIter, EdgeHandle, HalfedgeHandle, &PolyConnectivity::ceh_begin, &PolyConnectivity::ceh_end > > ConstEdgeHalfedgeRange
ConstFaceHalfedgeCCWIter cfh_ccwiter(FaceHandle _fh) const
const face - halfedge circulator ccw
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_sbegin, &PolyConnectivity::vertices_end > > ConstVertexRangeSkipping
ConstVertexRange all_vertices() const
Iterators::GenericCirculatorT< VertexEdgeTraits, true > VertexEdgeCWIter
EdgeHalfedgeIter eh_end(EdgeHandle _eh)
edge - halfedge circulator
ConstVertexVertexIter cvv_end(VertexHandle _vh) const
const vertex circulator
VertexVertexCCWIter vv_ccwend(VertexHandle _vh)
vertex - vertex circulator ccw
ConstFaceFaceCCWRange ff_ccw_range(FaceHandle _fh) const
ConstVertexIHalfedgeRange vih_range(VertexHandle _vh) const
FaceEdgeIter ConstFaceEdgeIter
SmartVertexHandle add_vertex()
Add a new vertex.
ConstVertexFaceIter cvf_begin(VertexHandle _vh) const
const vertex - face circulator
ConstEdgeVertexIter cev_iter(EdgeHandle _eh) const
const edge - vertex circulator
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > FaceHalfedgeCCWIter
ConstVertexEdgeCCWIter cve_ccwiter(VertexHandle _vh) const
const vertex - edge circulator ccw
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, true > VertexIHalfedgeCWIter
FaceIter faces_end()
End iterator for faces.
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_begin, &PolyConnectivity::cvf_end > > ConstVertexFaceRange
FaceVertexCWIter fv_cwbegin(FaceHandle _fh)
face - vertex circulator cw
ConstFaceHalfedgeCWIter cfh_cwend(FaceHandle _fh) const
const face - halfedge circulator cw
FaceEdgeCCWIter fe_ccwiter(FaceHandle _fh)
face - edge circulator ccw
ConstVertexIHalfedgeCWIter cvih_cwbegin(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeCCWIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_ccwbegin, &PolyConnectivity::cvih_ccwend > > ConstVertexIHalfedgeCCWRange
Iterators::GenericCirculatorT< FaceVertexTraits, true > FaceVertexCCWIter
ConstHalfedgeLoopIter chl_begin(HalfedgeHandle _heh) const
const halfedge circulator
FaceHalfedgeCCWIter fh_ccwend(FaceHandle _fh)
face - halfedge circulator ccw
ConstVertexOHalfedgeIter cvoh_iter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
VertexFaceCCWIter ConstVertexFaceCCWIter
ConstFaceEdgeCWIter cfe_cwbegin(FaceHandle _fh) const
const face - edge circulator cw
ConstVertexVertexCCWRange vv_ccw_range(VertexHandle _vh) const
ConstFaceRangeSkipping faces() const
FaceFaceIter ff_begin(FaceHandle _fh)
face - face circulator
ConstVertexIHalfedgeIter cvih_begin(VertexHandle _vh) const
const vertex - incoming halfedge circulator
ConstVertexOHalfedgeIter cvoh_begin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
VertexOHalfedgeIter ConstVertexOHalfedgeIter
VertexVertexCCWIter vv_ccwbegin(VertexHandle _vh)
vertex - vertex circulator ccw
VertexFaceCCWIter vf_ccwbegin(VertexHandle _vh)
vertex - face circulator ccw
FaceIter ConstFaceIter
Linear iterator.
ConstVertexRangeSkipping vertices() const
FaceVertexCCWIter fv_ccwend(FaceHandle _fh)
face - vertex circulator ccw
ConstVertexFaceCWIter cvf_cwbegin(VertexHandle _vh) const
const vertex - face circulator cw
ConstVertexVertexCWIter cvv_cwiter(VertexHandle _vh) const
const vertex circulator cw
VertexIHalfedgeCWIter ConstVertexIHalfedgeCWIter
VertexEdgeCWIter ConstVertexEdgeCWIter
Iterators::GenericCirculatorT< VertexVertexTraits, true > VertexVertexCWIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeFaceIter, EdgeHandle, FaceHandle, &PolyConnectivity::cef_begin, &PolyConnectivity::cef_end > > ConstEdgeFaceRange
SmartEdgeHandle edge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
VertexFaceCCWIter vf_ccwiter(VertexHandle _vh)
vertex - face circulator ccw
VertexVertexCWIter vv_cwiter(VertexHandle _vh)
vertex - vertex circulator cw
ConstVertexOHalfedgeCCWIter cvoh_ccwend(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
ConstVertexOHalfedgeIter cvoh_end(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
VertexEdgeIter ve_begin(VertexHandle _vh)
vertex - edge circulator
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_begin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRange
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > FaceHalfedgeCWIter
ConstHalfedgeLoopCWIter chl_cwbegin(HalfedgeHandle _heh) const
const halfedge circulator cw
VertexVertexCWIter ConstVertexVertexCWIter
ConstFaceHalfedgeRange fh_range(FaceHandle _fh) const
ConstVertexEdgeCWIter cve_cwbegin(VertexHandle _vh) const
const vertex - edge circulator cw
ConstHalfedgeLoopCCWIter chl_ccwbegin(HalfedgeHandle _heh) const
const halfedge circulator ccw
VertexEdgeCCWIter ConstVertexEdgeCCWIter
ConstFaceVertexCCWIter cfv_ccwbegin(FaceHandle _fh) const
const face - vertex circulator ccw
VertexVertexIter ConstVertexVertexIter
ConstVertexOHalfedgeCCWRange voh_ccw_range(VertexHandle _vh) const
SmartFaceHandle opposite_face_handle(HalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
FaceFaceCCWIter ff_ccwend(FaceHandle _fh)
face - face circulator ccw
ConstVertexOHalfedgeCWIter cvoh_cwend(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
Iterators::GenericCirculatorT_DEPRECATED< FaceFaceTraits > FaceFaceIter
SmartHalfedgeHandle cw_rotated_halfedge_handle(SmartHalfedgeHandle _heh) const
returns the face handle of the opposite halfedge
FaceHalfedgeCWIter ConstFaceHalfedgeCWIter
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_begin, &PolyConnectivity::cfh_end > > ConstFaceHalfedgeRange
Iterators::GenericCirculatorT_DEPRECATED< EdgeFaceTraits > EdgeFaceIter
HalfedgeLoopCWIter hl_cwend(HalfedgeHandle _heh)
face - face circulator cw
FaceEdgeCCWIter fe_ccwend(FaceHandle _fh)
face - edge circulator ccw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstEdgeVertexIter, EdgeHandle, VertexHandle, &PolyConnectivity::cev_begin, &PolyConnectivity::cev_end > > ConstEdgeVertexRange
ConstFaceHalfedgeCCWRange fh_ccw_range(FaceHandle _fh) const
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > HalfedgeLoopCWIter
ConstFaceVertexCWIter cfv_cwend(FaceHandle _fh) const
const face - vertex circulator cw
Iterators::GenericCirculatorT< FaceFaceTraits, false > FaceFaceCWIter
VertexIHalfedgeCCWIter vih_ccwiter(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
FaceFaceCCWIter ff_ccwbegin(FaceHandle _fh)
face - face circulator ccw
VertexIHalfedgeIter vih_iter(VertexHandle _vh)
vertex - incoming halfedge circulator
Iterators::GenericCirculatorT_DEPRECATED< FaceEdgeTraits > FaceEdgeIter
ConstVertexVertexIter cvv_begin(VertexHandle _vh) const
const vertex circulator
VertexIter vertices_end()
End iterator for vertices.
Iterators::GenericCirculatorT< FaceEdgeTraits, false > FaceEdgeCWIter
ConstEdgeHalfedgeIter ceh_iter(EdgeHandle _eh) const
const edge - halfedge circulator
Iterators::GenericCirculatorT_DEPRECATED< EdgeVertexTraits > EdgeVertexIter
Iterators::GenericCirculatorT< VertexFaceTraits, false > VertexFaceCCWIter
FaceHalfedgeIter fh_iter(FaceHandle _fh)
face - halfedge circulator
FaceHalfedgeCWIter fh_cwbegin(FaceHandle _fh)
face - halfedge circulator cw
ConstVertexFaceIter cvf_end(VertexHandle _vh) const
const vertex - face circulator
VertexEdgeIter ve_iter(VertexHandle _vh)
vertex - edge circulator
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_begin, &PolyConnectivity::cff_end > > ConstFaceFaceRange
FaceIter faces_begin()
Begin iterator for faces.
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstHalfedgeLoopCWIter, HalfedgeHandle, HalfedgeHandle, &PolyConnectivity::chl_cwbegin, &PolyConnectivity::chl_cwend > > ConstHalfedgeLoopCWRange
ConstFaceVertexIter cfv_end(FaceHandle _fh) const
const face - vertex circulator
VertexOHalfedgeCCWIter voh_ccwbegin(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
ConstEdgeHalfedgeRange eh_range(EdgeHandle _eh) const
FaceHalfedgeIter fh_begin(FaceHandle _fh)
face - halfedge circulator
ConstVertexEdgeIter cve_begin(VertexHandle _vh) const
const vertex - edge circulator
Iterators::GenericCirculatorT< FaceEdgeTraits, true > FaceEdgeCCWIter
ConstFaceEdgeCCWIter cfe_ccwiter(FaceHandle _fh) const
const face - edge circulator ccw
ConstFaceHalfedgeCWIter cfh_cwbegin(FaceHandle _fh) const
const face - halfedge circulator cw
ConstFaceVertexCWRange fv_cw_range(FaceHandle _fh) const
ConstVertexVertexRange vv_range(VertexHandle _vh) const
HalfedgeLoopCCWIter hl_ccwend(HalfedgeHandle _heh)
face - face circulator ccw
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceCCWIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_ccwbegin, &PolyConnectivity::cvf_ccwend > > ConstVertexFaceCCWRange
ConstFaceVertexCWIter cfv_cwbegin(FaceHandle _fh) const
const face - vertex circulator cw
FaceVertexIter fv_iter(FaceHandle _fh)
face - vertex circulator
VertexEdgeCWIter ve_cwiter(VertexHandle _vh)
vertex - edge circulator cw
ConstFaceHalfedgeCCWIter cfh_ccwend(FaceHandle _fh) const
const face - halfedge circulator ccw
VertexOHalfedgeCWIter voh_cwend(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
ConstVertexIHalfedgeCWIter cvih_cwiter(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
ConstVertexFaceCWIter cvf_cwend(VertexHandle _vh) const
const vertex - face circulator cw
FaceEdgeCWIter fe_cwend(FaceHandle _fh)
face - edge circulator cw
ConstVertexIHalfedgeIter cvih_iter(VertexHandle _vh) const
const vertex - incoming halfedge circulator
EdgeHalfedgeIter eh_iter(EdgeHandle _eh)
edge - halfedge circulator
EdgeFaceIter ef_end(EdgeHandle _eh)
edge - face circulator
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_sbegin, &PolyConnectivity::faces_end > > ConstFaceRangeSkipping
VertexIHalfedgeIter vih_begin(VertexHandle _vh)
vertex - incoming halfedge circulator
VertexFaceIter vf_end(VertexHandle _vh)
vertex - face circulator
ConstFaceRange all_faces() const
VertexIHalfedgeCCWIter vih_ccwbegin(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
SmartHalfedgeHandle halfedge_handle(SmartEdgeHandle _eh, unsigned int _i=0) const
returns the face handle of the opposite halfedge
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexCCWIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_ccwbegin, &PolyConnectivity::cfv_ccwend > > ConstFaceVertexCCWRange
VertexVertexCWIter vv_cwend(VertexHandle _vh)
vertex - vertex circulator cw
VertexFaceIter vf_iter(VertexHandle _vh)
vertex - face circulator
ConstFaceVertexCCWRange fv_ccw_range(FaceHandle _fh) const
ConstVertexEdgeCWIter cve_cwend(VertexHandle _vh) const
const vertex - edge circulator cw
ConstVertexEdgeIter cve_end(VertexHandle _vh) const
const vertex - edge circulator
FaceVertexCWIter ConstFaceVertexCWIter
Iterators::GenericCirculatorT< VertexHalfedgeTraits, true > VertexOHalfedgeCWIter
ConstVertexIHalfedgeCCWIter cvih_ccwend(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
ConstVertexFaceRange vf_range(VertexHandle _vh) const
const PolyConnectivity * mesh() const
Get the underlying mesh of this handle.
SmartVertexHandle make_smart(VertexHandle _vh, const PolyConnectivity *_mesh)
Creats a SmartVertexHandle from a VertexHandle and a Mesh.
Handle for a edge entity.
Handle for a face entity.
Handle for a halfedge entity.
PolyConnectivity::ConstEdgeHalfedgeRange halfedges() const
Returns a range of halfedges of the edge (PolyConnectivity::eh_range())
PolyConnectivity::ConstEdgeFaceRange faces() const
Returns a range of faces incident to the edge (PolyConnectivity::ef_range())
PolyConnectivity::ConstEdgeVertexRange vertices() const
Returns a range of vertices incident to the edge (PolyConnectivity::ev_range())
PolyConnectivity::ConstFaceFaceCWRange faces_cw() const
Returns a range adjacent faces of the face (PolyConnectivity::ff_cw_range())
PolyConnectivity::ConstFaceEdgeRange edges() const
Returns a range of edges of the face (PolyConnectivity::fv_range())
PolyConnectivity::ConstFaceHalfedgeCWRange halfedges_cw() const
Returns a range of halfedges of the face (PolyConnectivity::fh_cw_range())
PolyConnectivity::ConstFaceFaceRange faces() const
Returns a range adjacent faces of the face (PolyConnectivity::ff_range())
PolyConnectivity::ConstFaceVertexRange vertices() const
Returns a range of vertices incident to the face (PolyConnectivity::fv_range())
PolyConnectivity::ConstFaceFaceCCWRange faces_ccw() const
Returns a range adjacent faces of the face (PolyConnectivity::ff_ccw_range())
PolyConnectivity::ConstFaceEdgeCCWRange edges_ccw() const
Returns a range of edges of the face (PolyConnectivity::fv_ccw_range())
PolyConnectivity::ConstFaceEdgeCWRange edges_cw() const
Returns a range of edges of the face (PolyConnectivity::fv_cw_range())
PolyConnectivity::ConstFaceHalfedgeCCWRange halfedges_ccw() const
Returns a range of halfedges of the face (PolyConnectivity::fh_ccw_range())
PolyConnectivity::ConstFaceHalfedgeRange halfedges() const
Returns a range of halfedges of the face (PolyConnectivity::fh_range())
PolyConnectivity::ConstFaceVertexCWRange vertices_cw() const
Returns a range of vertices incident to the face (PolyConnectivity::fv_cw_range())
PolyConnectivity::ConstFaceVertexCCWRange vertices_ccw() const
Returns a range of vertices incident to the face (PolyConnectivity::fv_ccw_range())
PolyConnectivity::ConstHalfedgeLoopRange loop() const
Returns a range of halfedges in the face of the halfedge (or along the boundary) (PolyConnectivity::h...
PolyConnectivity::ConstHalfedgeLoopCCWRange loop_ccw() const
Returns a range of halfedges in the face of the halfedge (or along the boundary) (PolyConnectivity::h...
PolyConnectivity::ConstHalfedgeLoopCWRange loop_cw() const
Returns a range of halfedges in the face of the halfedge (or along the boundary) (PolyConnectivity::h...
Base class for all smart range types.
Smart version of VertexHandle contains a pointer to the corresponding mesh and allows easier access t...
PolyConnectivity::ConstVertexEdgeCWRange edges_cw() const
Returns a range of edges incident to the vertex (PolyConnectivity::ve_cw_range())
PolyConnectivity::ConstVertexFaceCWRange faces_cw() const
Returns a range of faces incident to the vertex (PolyConnectivity::vf_cw_range())
PolyConnectivity::ConstVertexIHalfedgeRange incoming_halfedges() const
Returns a range of outgoing halfedges incident to the vertex (PolyConnectivity::voh_range())
PolyConnectivity::ConstVertexIHalfedgeCWRange incoming_halfedges_cw() const
Returns a range of outgoing halfedges incident to the vertex (PolyConnectivity::voh_cw_range())
PolyConnectivity::ConstVertexVertexCCWRange vertices_ccw() const
Returns a range of vertices adjacent to the vertex (PolyConnectivity::vv_ccw_range())
PolyConnectivity::ConstVertexVertexCWRange vertices_cw() const
Returns a range of vertices adjacent to the vertex (PolyConnectivity::vv_cw_range())
PolyConnectivity::ConstVertexVertexRange vertices() const
Returns a range of vertices adjacent to the vertex (PolyConnectivity::vv_range())
PolyConnectivity::ConstVertexEdgeCCWRange edges_ccw() const
Returns a range of edges incident to the vertex (PolyConnectivity::ve_ccw_range())
PolyConnectivity::ConstVertexIHalfedgeCCWRange incoming_halfedges_ccw() const
Returns a range of outgoing halfedges incident to the vertex (PolyConnectivity::voh_ccw_range())
PolyConnectivity::ConstVertexFaceRange faces() const
Returns a range of faces incident to the vertex (PolyConnectivity::vf_range())
PolyConnectivity::ConstVertexOHalfedgeRange outgoing_halfedges() const
Returns a range of incoming halfedges incident to the vertex (PolyConnectivity::voh_range())
PolyConnectivity::ConstVertexOHalfedgeCWRange outgoing_halfedges_cw() const
Returns a range of incoming halfedges incident to the vertex (PolyConnectivity::voh_cw_range())
PolyConnectivity::ConstVertexFaceCCWRange faces_ccw() const
Returns a range of faces incident to the vertex (PolyConnectivity::vf_ccw_range())
PolyConnectivity::ConstVertexOHalfedgeCCWRange outgoing_halfedges_ccw() const
Returns a range of incoming halfedges incident to the vertex (PolyConnectivity::voh_ccw_range())
PolyConnectivity::ConstVertexEdgeRange edges() const
Returns a range of edges incident to the vertex (PolyConnectivity::ve_range())
Handle for a vertex entity.