#include <itkQuadEdgeMeshFrontIterator.h>
Front iterator on Mesh class.
Like topological and geometrical operators, it iterates on edges. Unlike them, this iterator is not local, nor cyclic. Starting from a given seed, it will create a front that propagates on the surface. Depending on the weight associated which each edge, and on the type of the seed (primal or dual) it can be used for front propagation algorithm, distance tree computation or other Djikstra like algorithms.
Definition at line 75 of file itkQuadEdgeMeshFrontIterator.h.
Classes | |
class | FrontAtom |
Public Types | |
using | MeshType = TMesh |
using | QEType = TQE |
using | Self = QuadEdgeMeshFrontBaseIterator |
Protected Types | |
using | CoordinateType = typename MeshType::CoordinateType |
using | QEOriginType = typename QEType::OriginRefType |
using | FrontType = std::list<FrontAtom> |
using | FrontTypeIterator = typename FrontType::iterator |
using | FrontTypePointer = FrontType * |
using | IsVisitedContainerType = MapContainer<QEOriginType, bool> |
using | IsVisitedPointerType = typename IsVisitedContainerType::Pointer |
MeshType * | m_Mesh {} |
QEType * | m_Seed {} |
bool | m_Start {} |
FrontTypePointer | m_Front {} |
IsVisitedPointerType | m_IsPointVisited {} |
QEType * | m_CurrentEdge {} |
QuadEdgeMeshFrontBaseIterator (MeshType *mesh=nullptr, bool start=true, QEType *seed=nullptr) | |
virtual | ~QuadEdgeMeshFrontBaseIterator () |
Self & | operator= (const Self &r) |
bool | operator== (const Self &r) const |
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (Self) | |
Self & | operator++ () |
Self & | operator++ (int) |
MeshType * | GetMesh () const |
QEType * | FindDefaultSeed () |
virtual CoordinateType | GetCost (QEType *edge) |
|
protected |
Definition at line 87 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 142 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 143 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 144 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
Whether an Origin (i.e. a vertex or a face since we either deal with primal or dual edges) was already visited.
Definition at line 149 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 150 of file itkQuadEdgeMeshFrontIterator.h.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::MeshType = TMesh |
Definition at line 82 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
Definition at line 93 of file itkQuadEdgeMeshFrontIterator.h.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::QEType = TQE |
Definition at line 83 of file itkQuadEdgeMeshFrontIterator.h.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::Self = QuadEdgeMeshFrontBaseIterator |
Definition at line 79 of file itkQuadEdgeMeshFrontIterator.h.
itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::QuadEdgeMeshFrontBaseIterator | ( | MeshType * | mesh = nullptr, |
bool | start = true, | ||
QEType * | seed = nullptr ) |
Object creation methods.
|
virtual |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
|
protected |
Find a default seed by taking any edge (with proper type) in the current mesh.
|
inlineprotectedvirtual |
The default cost associated to an edge is simply 1. This corresponds to the "topological metric" i.e. all edges have unit length.
Definition at line 208 of file itkQuadEdgeMeshFrontIterator.h.
|
inline |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 192 of file itkQuadEdgeMeshFrontIterator.h.
References m_Mesh.
Referenced by itk::QuadEdgeMeshConstFrontIterator< TMesh, TQE >::operator=().
itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION | ( | Self | ) |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Self & itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator++ | ( | ) |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
|
inline |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 186 of file itkQuadEdgeMeshFrontIterator.h.
|
inline |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 159 of file itkQuadEdgeMeshFrontIterator.h.
References m_CurrentEdge, m_Front, m_IsPointVisited, m_Mesh, m_Seed, and m_Start.
|
inline |
The active front is simply a list of edges that can be sorted on the sort attribute FrontAtom
Definition at line 175 of file itkQuadEdgeMeshFrontIterator.h.
References m_Start.
|
protected |
The current edge at this stage of iteration
Definition at line 230 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by operator=(), and itk::QuadEdgeMeshFrontIterator< MeshType, QEType >::Value().
|
protected |
The active front
Definition at line 224 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by operator=().
|
protected |
The already visited points
Definition at line 227 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by operator=().
|
protected |
Mesh on which we propagate the front
Definition at line 215 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by GetMesh(), and operator=().
|
protected |
Initial seed of the front
Definition at line 218 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by operator=().
|
protected |
Whether the iterator is active
Definition at line 221 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by operator=(), and operator==().