VertexOutHalfedgeIterator, transverse all the outgoing halfedges of a vertex ccwly. More...
#include <iterators.h>
Public Member Functions | |
VertexOutHalfedgeIterator (CBaseMesh< CVertex, CEdge, CFace, CHalfEdge > *pMesh, CVertex *v) | |
~VertexOutHalfedgeIterator () | |
void | operator++ () |
void | operator++ (int) |
CHalfEdge * | value () |
bool | end () |
CHalfEdge * | operator* () |
Private Attributes | |
CBaseMesh< CVertex, CEdge, CFace, CHalfEdge > * | m_pMesh |
CVertex * | m_vertex |
CHalfEdge * | m_halfedge |
VertexOutHalfedgeIterator, transverse all the outgoing halfedges of a vertex ccwly.
Definition at line 22 of file iterators.h.
MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::VertexOutHalfedgeIterator | ( | CBaseMesh< CVertex, CEdge, CFace, CHalfEdge > * | pMesh, | |
CVertex * | v | |||
) | [inline] |
VertexOutHalfedgeIteartor constructor
pMesh | pointer to the current mesh | |
v | pointer to the current vertex |
Definition at line 30 of file iterators.h.
{ m_pMesh = pMesh; m_vertex = v; m_halfedge = m_pMesh->vertexMostClwOutHalfEdge(v); };
MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::~VertexOutHalfedgeIterator | ( | ) | [inline] |
bool MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::end | ( | ) | [inline] |
whether all the out halfedges have been visited.
Definition at line 65 of file iterators.h.
{ return m_halfedge == NULL; };
CHalfEdge* MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator* | ( | ) | [inline] |
The current halfedge the iterator pointing to.
Definition at line 69 of file iterators.h.
{ return value(); };
void MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | int | ) | [inline] |
postfix ++ operator, goes to the next ccw vertex out halfedge
Definition at line 50 of file iterators.h.
{assert( m_halfedge != NULL ); if( m_halfedge == m_pMesh->vertexMostCcwOutHalfEdge(m_vertex) ) m_halfedge = NULL; else m_halfedge = m_pMesh->vertexNextCcwOutHalfEdge(m_halfedge); };
void MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | ) | [inline] |
prefix ++ operator, goes to the next ccw vertex out halfedge
Definition at line 40 of file iterators.h.
{assert( m_halfedge != NULL ); if( m_halfedge == m_pMesh->vertexMostCcwOutHalfEdge(m_vertex) ) m_halfedge = NULL; else m_halfedge = m_pMesh->vertexNextCcwOutHalfEdge(m_halfedge); };
CHalfEdge* MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::value | ( | ) | [inline] |
The current halfedge the iterator pointing to.
Definition at line 61 of file iterators.h.
{ return m_halfedge; };
CHalfEdge* MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_halfedge [private] |
Current halfedge.
Definition at line 83 of file iterators.h.
CBaseMesh<CVertex,CEdge,CFace,CHalfEdge>* MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_pMesh [private] |
Current mesh.
Definition at line 69 of file iterators.h.
CVertex* MeshLib::VertexOutHalfedgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_vertex [private] |
Current vertex.
Definition at line 79 of file iterators.h.