VertexFaceIterator, transverse all the neighboring faces of a vertex ccwly. More...
#include <iterators.h>
Public Member Functions | |
VertexFaceIterator (CVertex *&v) | |
~VertexFaceIterator () | |
void | operator++ () |
void | operator++ (int) |
CFace * | value () |
CFace * | operator* () |
bool | end () |
void | reset () |
Private Attributes | |
CVertex * | m_vertex |
CHalfEdge * | m_halfedge |
VertexFaceIterator, transverse all the neighboring faces of a vertex ccwly.
Definition at line 468 of file iterators.h.
MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::VertexFaceIterator | ( | CVertex *& | v | ) | [inline] |
VertexFaceIterator constructor
v | the current vertex |
Definition at line 475 of file iterators.h.
{ m_vertex = v; m_halfedge = (CHalfEdge*)m_vertex->most_clw_out_halfedge(); };
MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::~VertexFaceIterator | ( | ) | [inline] |
bool MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::end | ( | ) | [inline] |
Indicate whether all the neighboring faces have been accessed.
Definition at line 524 of file iterators.h.
{ return m_halfedge == NULL; };
CFace* MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::operator* | ( | ) | [inline] |
The neighboring face, pointed by the current iterator
Definition at line 520 of file iterators.h.
{ return value(); };
void MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | ) | [inline] |
VertexFaceIterator prefix operator ++, goes to the next neighboring face CCWly
Definition at line 487 of file iterators.h.
{ assert( m_halfedge != NULL ); if( m_halfedge == (CHalfEdge*)m_vertex->most_ccw_out_halfedge() ) { m_halfedge = NULL; return; } m_halfedge = (CHalfEdge*)m_halfedge->ccw_rotate_about_source(); };
void MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | int | ) | [inline] |
VertexFaceIterator prefix operator ++, goes to the next neighboring face CCWly
Definition at line 502 of file iterators.h.
{ assert( m_halfedge != NULL ); if( m_halfedge == (CHalfEdge*)m_vertex->most_ccw_out_halfedge() ) { m_halfedge = NULL; return; } m_halfedge = (CHalfEdge*)m_halfedge->ccw_rotate_about_source(); };
void MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::reset | ( | ) | [inline] |
Reset the VertexFaceIterator
Definition at line 528 of file iterators.h.
{ m_halfedge = (CHalfEdge*)m_vertex->most_clw_out_halfedge(); };
CFace* MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::value | ( | ) | [inline] |
The neighboring face, pointed by the current iterator
Definition at line 516 of file iterators.h.
{ return (CFace*) m_halfedge->face(); };
CHalfEdge* MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::m_halfedge [private] |
current halfedge
Definition at line 538 of file iterators.h.
CVertex* MeshLib::VertexFaceIterator< CVertex, CEdge, CFace, CHalfEdge >::m_vertex [private] |
current vertex
Definition at line 528 of file iterators.h.