Point Cloud Library (PCL)
1.7.0
|
Circulates counter-clockwise around a vertex and returns an index to the incoming half-edge (the target). More...
#include <pcl/geometry/mesh_circulators.h>
Public Types | |
typedef boost::equality_comparable < pcl::geometry::IncomingHalfEdgeAroundVertexCirculator < MeshT > , boost::unit_steppable < pcl::geometry::IncomingHalfEdgeAroundVertexCirculator < MeshT > > > | Base |
typedef pcl::geometry::IncomingHalfEdgeAroundVertexCirculator < MeshT > | Self |
typedef MeshT | Mesh |
typedef Mesh::VertexIndex | VertexIndex |
typedef Mesh::HalfEdgeIndex | HalfEdgeIndex |
Public Member Functions | |
IncomingHalfEdgeAroundVertexCirculator () | |
Constructor resulting in an invalid circulator. More... | |
IncomingHalfEdgeAroundVertexCirculator (const VertexIndex &idx_vertex, Mesh *const mesh) | |
Construct from the vertex around which we want to circulate. More... | |
IncomingHalfEdgeAroundVertexCirculator (const HalfEdgeIndex &idx_incoming_half_edge, Mesh *const mesh) | |
Construct directly from the incoming half-edge. More... | |
bool | isValid () const |
Check if the circulator is valid. More... | |
bool | operator== (const Self &other) const |
Comparison operators (with boost::operators): == !=. More... | |
Self & | operator++ () |
Increment operators (with boost::operators): ++ (pre and post) More... | |
Self & | operator-- () |
Decrement operators (with boost::operators): – (pre and post) More... | |
HalfEdgeIndex | getTargetIndex () const |
Get the index to the incoming half-edge. More... | |
HalfEdgeIndex | getCurrentHalfEdgeIndex () const |
Get the half-edge that is currently stored in the circulator. More... | |
Public Attributes | |
Mesh * | mesh_ |
The mesh to which this circulator belongs to. More... | |
HalfEdgeIndex | idx_incoming_half_edge_ |
The incoming half-edge of the vertex around which we want to circulate. More... | |
Circulates counter-clockwise around a vertex and returns an index to the incoming half-edge (the target).
The best way to declare the circulator is to use the method pcl::geometry::MeshBase::getIncomingHalfEdgeAroundVertexCirculator ().
MeshT | Mesh to which this circulator belongs to. |
Definition at line 280 of file mesh_circulators.h.
typedef boost::equality_comparable<pcl::geometry::IncomingHalfEdgeAroundVertexCirculator <MeshT> , boost::unit_steppable <pcl::geometry::IncomingHalfEdgeAroundVertexCirculator <MeshT> > > pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::Base |
Definition at line 288 of file mesh_circulators.h.
typedef Mesh::HalfEdgeIndex pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::HalfEdgeIndex |
Definition at line 293 of file mesh_circulators.h.
typedef MeshT pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::Mesh |
Definition at line 291 of file mesh_circulators.h.
typedef pcl::geometry::IncomingHalfEdgeAroundVertexCirculator<MeshT> pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::Self |
Definition at line 289 of file mesh_circulators.h.
typedef Mesh::VertexIndex pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::VertexIndex |
Definition at line 292 of file mesh_circulators.h.
|
inline |
Constructor resulting in an invalid circulator.
Definition at line 296 of file mesh_circulators.h.
|
inline |
Construct from the vertex around which we want to circulate.
Definition at line 303 of file mesh_circulators.h.
|
inline |
Construct directly from the incoming half-edge.
Definition at line 311 of file mesh_circulators.h.
|
inline |
Get the half-edge that is currently stored in the circulator.
Definition at line 359 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_.
|
inline |
Get the index to the incoming half-edge.
Definition at line 352 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_.
Referenced by pcl::geometry::MeshBase< QuadMesh< MeshTraitsT >, MeshTraitsT, QuadMeshTag >::checkTopology2(), and pcl::geometry::MeshBase< QuadMesh< MeshTraitsT >, MeshTraitsT, QuadMeshTag >::reconnectNBNB().
|
inline |
Check if the circulator is valid.
Definition at line 321 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_.
|
inline |
Increment operators (with boost::operators): ++ (pre and post)
Definition at line 336 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_, and pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::mesh_.
|
inline |
Decrement operators (with boost::operators): – (pre and post)
Definition at line 344 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_, and pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::mesh_.
|
inline |
Comparison operators (with boost::operators): == !=.
Definition at line 329 of file mesh_circulators.h.
References pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_.
HalfEdgeIndex pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::idx_incoming_half_edge_ |
The incoming half-edge of the vertex around which we want to circulate.
Definition at line 368 of file mesh_circulators.h.
Referenced by pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::getCurrentHalfEdgeIndex(), pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::getTargetIndex(), pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::isValid(), pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::operator++(), pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::operator--(), and pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::operator==().
Mesh* pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::mesh_ |
The mesh to which this circulator belongs to.
Definition at line 365 of file mesh_circulators.h.
Referenced by pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::operator++(), and pcl::geometry::IncomingHalfEdgeAroundVertexCirculator< MeshT >::operator--().