MeshHalfEdgeIterator, transverse all the halfedges in the mesh. More...
#include <iterators.h>
Public Member Functions | |
MeshHalfEdgeIterator (CBaseMesh< CVertex, CEdge, CFace, CHalfEdge > *pMesh) | |
CHalfEdge * | value () |
CHalfEdge * | operator* () |
void | operator++ () |
void | operator++ (int) |
bool | end () |
Private Attributes | |
CHalfEdge * | m_he |
CBaseMesh< CVertex, CEdge, CFace, CHalfEdge > * | m_pMesh |
std::list< CEdge * >::iterator | m_iter |
int | m_id |
MeshHalfEdgeIterator, transverse all the halfedges in the mesh.
Definition at line 919 of file iterators.h.
bool MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::end | ( | ) | [inline] |
Indicate whether all the halfedges have been accessed
Definition at line 993 of file iterators.h.
CHalfEdge* MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator* | ( | ) | [inline] |
The halfedge, pointed by the current iterator
Definition at line 939 of file iterators.h.
{ return value(); };
void MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | int | ) | [inline] |
MeshVertexIterator postfix operator ++, goes to the next vertex
Definition at line 968 of file iterators.h.
{ ++m_id; switch( m_id ) { case 1: { CEdge * e = *m_iter; if( e->halfedge(m_id) == NULL ) { m_id = 0; ++ m_iter; } } break; case 2: m_id = 0; ++m_iter; break; } };
void MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::operator++ | ( | ) | [inline] |
MeshVertexIterator prefix operator ++, goes to the next halfedge
Definition at line 943 of file iterators.h.
{ ++m_id; switch( m_id ) { case 1: { CEdge * e = *m_iter; if( e->halfedge(m_id) == NULL ) { m_id = 0; ++ m_iter; } } break; case 2: m_id = 0; ++m_iter; break; } };
CHalfEdge* MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::value | ( | ) | [inline] |
The halfedge, pointed by the current iterator
Definition at line 935 of file iterators.h.
CHalfEdge* MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_he [private] |
Current halfedge
Definition at line 1000 of file iterators.h.
int MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_id [private] |
Definition at line 1009 of file iterators.h.
std::list<CEdge*>::iterator MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_iter [private] |
Current edge list iterator
Definition at line 1008 of file iterators.h.
CBaseMesh<CVertex,CEdge,CFace,CHalfEdge>* MeshLib::MeshHalfEdgeIterator< CVertex, CEdge, CFace, CHalfEdge >::m_pMesh [private] |
Current mesh
Definition at line 1004 of file iterators.h.