18 #ifndef itkGeometricalQuadEdge_h
19 #define itkGeometricalQuadEdge_h
59 template<
typename TVRef,
typename TFRef,
60 typename TPrimalData,
typename TDualData,
61 bool PrimalDual =
true >
76 TDualData, TPrimalData, !PrimalDual >
DualType;
232 {
return (
this == this->
GetOnext() ); }
259 #ifndef ITK_MANUAL_INSTANTIATION
260 #include "itkGeometricalQuadEdge.hxx"
bool InsertAfterNextBorderEdgeWithUnsetLeft(Self *isol, Self *hint=0)
QuadEdgeMeshConstIteratorGeom< Self > ConstIteratorGeom
void SetOrigin(const OriginRefType v)
const OriginRefType GetOrigin() const
QuadEdgeMeshIteratorGeom< Self > IteratorGeom
void SetLeft(const DualOriginRefType v)
void SetPrimalData(const PrimalDataType data)
Base class for the implementation of a quad-edge data structure as proposed in "Guibas and Stolfi 198...
bool IsDestinationSet() const
GeometricalQuadEdge< TFRef, TVRef, TDualData, TPrimalData,!PrimalDual > DualType
bool IsOriginDisconnected()
const DualOriginRefType GetLeft() const
bool IsLnextSharingSameFace(int maxSize=100)
itkQEAccessorsMacro(Superclass, Self, DualType)
bool IsDestinationDisconnected()
const DualOriginRefType GetRight() const
Const geometrical iterator.
itkQEDefineIteratorGeomMethodsMacro(Onext)
Self * GetNextBorderEdgeWithUnsetLeft(Self *edgeTest=0)
bool IsOriginInternal() const
LineCellIdentifier m_LineCellIdent
DualDataType GetDualData()
PrimalDataType GetPrimalData()
TPrimalData PrimalDataType
This class extends the QuadEdge by adding a reference to the Origin.
void SetIdent(const LineCellIdentifier &User_Value)
bool IsInOnextRing(Self *)
const OriginRefType GetDestination() const
void SetRight(const DualOriginRefType v)
void SetDualData(const DualDataType data)
bool IsInLnextRing(Self *)
LineCellIdentifier GetIdent()
static const OriginRefType m_NoPoint
bool SetLnextRingWithSameLeftFace(const DualOriginRefType faceGeom, int maxSize=100)
virtual ~GeometricalQuadEdge()
bool ReorderOnextRingBeforeAddFace(Self *second)
void SetDestination(const OriginRefType v)
Non const geometrical iterator.