ITK
4.2.0
Insight Segmentation and Registration Toolkit
|
#include <itkGeometricalQuadEdge.h>
Public Types | |
typedef QuadEdgeMeshConstIteratorGeom < Self > | ConstIteratorGeom |
typedef TDualData | DualDataType |
typedef TFRef | DualOriginRefType |
typedef GeometricalQuadEdge < TFRef, TVRef, TDualData, TPrimalData,!PrimalDual > | DualType |
typedef QuadEdgeMeshIteratorGeom< Self > | IteratorGeom |
typedef TFRef | LineCellIdentifier |
typedef TVRef | OriginRefType |
typedef TPrimalData | PrimalDataType |
typedef Self * | RawPointer |
typedef GeometricalQuadEdge | Self |
typedef QuadEdge | Superclass |
Public Types inherited from itk::QuadEdge | |
typedef QuadEdgeMeshConstIterator < Self > | ConstIterator |
typedef QuadEdgeMeshIterator < Self > | Iterator |
Static Public Attributes | |
static const OriginRefType | m_NoPoint |
Protected Attributes | |
PrimalDataType | m_Data |
bool | m_DataSet |
LineCellIdentifier | m_LineCellIdent |
OriginRefType | m_Origin |
This class extends the QuadEdge by adding a reference to the Origin.
The class is implemented in such a way that it can generate its own Dual. In a physical edge, there will be four GeometricalQuadEdge. Two of them will be Primal and two will be Dual. The Primal ones are parallel to the physical edge and their origins relate to the mesh points. The Dual ones are orthogonal to the physical edge and their origins relate to the faces at each side of the physical edge.
The only purpose of the last paramater of the template is to guarantee that the two types GeometricalQuadEdge and GeometricalQuadEdge::Dual are always different (in the sense that their typeid() are different). If we only had the four first parameters and assume that GeometricalQuadEdge gets instantiated with types such that TVRef = TFRef and TPrimalData = TDualData then this instantiation GeometricalQuadEdge and GeometricalQuadEdge::Dual would be the same types (this is simply due to the very definition of GeometricalQuadEdge::Dual). This would in turn make the types QEType and QEDual of QuadEdgeMesh identical and would prevent any algorithm requiring to distinguish those types (e.g. by relying on a dynamic_cast<QEType*>) to be effective. This justifies the existence of last dummy template parameter and it's default value.
This implementation was contributed as a paper to the Insight Journal http://hdl.handle.net/1926/306
Definition at line 62 of file itkGeometricalQuadEdge.h.
typedef QuadEdgeMeshConstIteratorGeom< Self > itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::ConstIteratorGeom |
Definition at line 90 of file itkGeometricalQuadEdge.h.
typedef TDualData itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::DualDataType |
Definition at line 82 of file itkGeometricalQuadEdge.h.
typedef TFRef itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::DualOriginRefType |
Definition at line 80 of file itkGeometricalQuadEdge.h.
typedef GeometricalQuadEdge< TFRef, TVRef, TDualData, TPrimalData, !PrimalDual > itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::DualType |
Dual type, basically the same type with swapped template parameters.
Definition at line 76 of file itkGeometricalQuadEdge.h.
typedef QuadEdgeMeshIteratorGeom< Self > itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IteratorGeom |
Iterator types.
Definition at line 89 of file itkGeometricalQuadEdge.h.
typedef TFRef itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::LineCellIdentifier |
Definition at line 85 of file itkGeometricalQuadEdge.h.
typedef TVRef itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::OriginRefType |
Input template parameters & values convenient renaming.
Definition at line 79 of file itkGeometricalQuadEdge.h.
typedef TPrimalData itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::PrimalDataType |
Definition at line 81 of file itkGeometricalQuadEdge.h.
typedef Self* itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::RawPointer |
Definition at line 68 of file itkGeometricalQuadEdge.h.
typedef GeometricalQuadEdge itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::Self |
Hierarchy typedefs.
Reimplemented from itk::QuadEdge.
Definition at line 66 of file itkGeometricalQuadEdge.h.
typedef QuadEdge itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::Superclass |
Definition at line 67 of file itkGeometricalQuadEdge.h.
itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GeometricalQuadEdge | ( | ) |
Memory creation methods.
|
inlinevirtual |
Definition at line 114 of file itkGeometricalQuadEdge.h.
void itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::Disconnect | ( | ) |
|
inline |
Get methods.
Definition at line 148 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetOrigin(), and itk::QuadEdge::GetSym().
|
inline |
Extra data get methods.
Definition at line 177 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetPrimalData(), and itk::QuadEdge::GetRot().
|
inline |
Definition at line 244 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_LineCellIdent.
|
inline |
Get methods.
Definition at line 150 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetInvRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetOrigin().
Self* itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetNextBorderEdgeWithUnsetLeft | ( | Self * | edgeTest = 0 | ) |
|
inline |
Get methods.
Definition at line 147 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Origin.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetDestination(), itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetLeft(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetRight().
|
inline |
Extra data get methods.
Definition at line 176 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Data.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetDualData().
|
inline |
Get methods.
Definition at line 149 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetOrigin(), and itk::QuadEdge::GetRot().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::InsertAfterNextBorderEdgeWithUnsetLeft | ( | Self * | isol, |
Self * | hint = 0 |
||
) |
|
inline |
Definition at line 199 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLeftSet(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsRightSet().
|
inline |
Disconnection methods.
Definition at line 232 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetSym(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsOriginDisconnected().
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDisconnected().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDestinationSet | ( | ) | const |
|
inline |
Disconnection methods.
Definition at line 234 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDestinationDisconnected(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsOriginDisconnected().
|
inline |
Boolean accessors.
Definition at line 183 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsPrimalDataSet().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsInLnextRing | ( | Self * | ) |
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsInOnextRing | ( | Self * | ) |
|
inline |
Definition at line 209 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLeftSet(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsRightSet().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLeftSet | ( | ) | const |
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLnextOfTriangle | ( | ) |
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLnextSharingSameFace | ( | int | maxSize = 100 | ) |
|
inline |
Disconnection methods.
Definition at line 230 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetOnext().
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDestinationDisconnected(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDisconnected().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsOriginInternal | ( | ) | const |
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsOriginSet | ( | ) | const |
Boolean accessors.
|
inline |
Boolean accessors.
Definition at line 182 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_DataSet.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsDualDataSet().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsRightSet | ( | ) | const |
|
inline |
Definition at line 191 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsLeftSet(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::IsRightSet().
itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::itkQEAccessorsMacro | ( | Superclass | , |
Self | , | ||
DualType | |||
) |
QE macros.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
|
inline |
Basic iterators methods.
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::ReorderOnextRingBeforeAddFace | ( | Self * | second | ) |
|
inline |
Definition at line 120 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetSym(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetOrigin().
|
inline |
Extra data set methods.
Definition at line 165 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetPrimalData().
|
inline |
Definition at line 170 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetPrimalData().
|
inline |
Definition at line 243 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_LineCellIdent.
|
inline |
Definition at line 126 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetInvRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetOrigin().
bool itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetLnextRingWithSameLeftFace | ( | const DualOriginRefType | faceGeom, |
int | maxSize = 100 |
||
) |
Set the Left() of all the edges in the Lnext() ring of "this" with the same given geometrical information.
faceGeom | Looks at most maxSize edges in the Lnext() ring. |
maxSize | Sets at most maxSize edges in the Lnext() ring. |
|
inline |
Set methods.
Definition at line 117 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Origin.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetDestination(), itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetLeft(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetRight().
|
inline |
Extra data set methods.
Definition at line 163 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Data, and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetPrimalData().
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetDualData(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetPrimalData().
|
inline |
Definition at line 169 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_DataSet.
|
inline |
Definition at line 123 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetOrigin().
|
inline |
Definition at line 140 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetSym(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetOrigin().
|
inline |
Definition at line 173 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetPrimalData().
|
inline |
Definition at line 142 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetInvRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetOrigin().
|
inline |
Definition at line 139 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_NoPoint, and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Origin.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetDestination(), itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetLeft(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetRight().
|
inline |
Definition at line 172 of file itkGeometricalQuadEdge.h.
References itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::m_Data.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetDualData().
|
inline |
Definition at line 141 of file itkGeometricalQuadEdge.h.
References itk::QuadEdge::GetRot(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetOrigin().
|
protected |
Definition at line 250 of file itkGeometricalQuadEdge.h.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetPrimalData(), itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetPrimalData(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetPrimalData().
|
protected |
|
protected |
Definition at line 252 of file itkGeometricalQuadEdge.h.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetIdent(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetIdent().
|
static |
Definition at line 247 of file itkGeometricalQuadEdge.h.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetOrigin().
|
protected |
Definition at line 249 of file itkGeometricalQuadEdge.h.
Referenced by itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::GetOrigin(), itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::SetOrigin(), and itk::GeometricalQuadEdge< TVRef, TFRef, TPrimalData, TDualData, PrimalDual >::UnsetOrigin().