ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#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 frint propagation algorithm, distance tree computation or other Djikstra like algorithms.
Definition at line 86 of file itkQuadEdgeMeshFrontIterator.h.
Classes | |
class | FrontAtom |
Public Types | |
using | MeshType = TMesh |
using | QEType = TQE |
using | Self = QuadEdgeMeshFrontBaseIterator |
Public Member Functions | |
MeshType * | GetMesh () const |
bool | operator!= (Self &r) |
bool | operator!= (const Self &r) const |
Self & | operator++ () |
Self & | operator++ (int) |
Self & | operator= (const Self &r) |
bool | operator== (Self &r) |
bool | operator== (const Self &r) const |
Protected Types | |
using | CoordRepType = typename MeshType::CoordRepType |
using | QEOriginType = typename QEType::OriginRefType |
Protected Member Functions | |
QEType * | FindDefaultSeed () |
virtual CoordRepType | GetCost (QEType *edge) |
Protected Attributes | |
QEType * | m_CurrentEdge |
FrontTypePointer | m_Front |
IsVisitedPointerType | m_IsPointVisited |
MeshType * | m_Mesh |
QEType * | m_Seed |
bool | m_Start |
using | FrontType = std::list< FrontAtom > |
using | FrontTypeIterator = typename FrontType::iterator |
using | FrontTypePointer = FrontType * |
using | IsVisitedContainerType = MapContainer< QEOriginType, bool > |
using | IsVisitedPointerType = typename IsVisitedContainerType::Pointer |
QuadEdgeMeshFrontBaseIterator (MeshType *mesh=(MeshType *) nullptr, bool start=true, QEType *seed=(QEType *) nullptr) | |
virtual | ~QuadEdgeMeshFrontBaseIterator () |
|
protected |
Definition at line 98 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 136 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 137 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 138 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 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.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::MeshType = TMesh |
Definition at line 93 of file itkQuadEdgeMeshFrontIterator.h.
|
protected |
Definition at line 100 of file itkQuadEdgeMeshFrontIterator.h.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::QEType = TQE |
Definition at line 94 of file itkQuadEdgeMeshFrontIterator.h.
using itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::Self = QuadEdgeMeshFrontBaseIterator |
Definition at line 90 of file itkQuadEdgeMeshFrontIterator.h.
itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::QuadEdgeMeshFrontBaseIterator | ( | MeshType * | mesh = (MeshType *) nullptr , |
bool | start = true , |
||
QEType * | seed = (QEType *) 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 204 of file itkQuadEdgeMeshFrontIterator.h.
|
inline |
Definition at line 193 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshConstFrontIterator< TMesh, TQE >::operator=().
|
inline |
Definition at line 179 of file itkQuadEdgeMeshFrontIterator.h.
|
inline |
Definition at line 184 of file itkQuadEdgeMeshFrontIterator.h.
Self& itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator++ | ( | ) |
|
inline |
Definition at line 191 of file itkQuadEdgeMeshFrontIterator.h.
|
inline |
Definition at line 154 of file itkQuadEdgeMeshFrontIterator.h.
References itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_CurrentEdge, itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Front, itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_IsPointVisited, itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Mesh, itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Seed, and itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Start.
|
inline |
Definition at line 169 of file itkQuadEdgeMeshFrontIterator.h.
References itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Start.
|
inline |
Definition at line 174 of file itkQuadEdgeMeshFrontIterator.h.
References itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::m_Start.
|
protected |
The current edge at this stage of iteration
Definition at line 223 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=().
|
protected |
The active front
Definition at line 217 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=().
|
protected |
The already visited points
Definition at line 220 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=().
|
protected |
Mesh on which we propagate the front
Definition at line 208 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=().
|
protected |
Initial seed of the front
Definition at line 211 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=().
|
protected |
Whether the iterator is active
Definition at line 214 of file itkQuadEdgeMeshFrontIterator.h.
Referenced by itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator=(), and itk::QuadEdgeMeshFrontBaseIterator< TMesh, TQE >::operator==().