18 #ifndef itkQuadEdgeMeshPolygonCell_h
19 #define itkQuadEdgeMeshPolygonCell_h
37 template<
typename TCellInterface >
52 typedef typename Superclass::CellType
CellType;
70 itkStaticConstMacro(
PointDimension,
unsigned int, Superclass::PointDimension);
91 typedef typename QuadEdgeType::DualType
QEDual;
124 return ( Superclass::POLYGON_CELL );
144 Self * newPolygonCell =
new Self(numberOfPoints);
147 cell.TakeOwnership(newPolygonCell);
148 if ( numberOfPoints )
157 newPolygonCell->
SetPointId( i, it.Value()->GetOrigin() );
180 return ( static_cast< PointIdIterator >( ITK_NULLPTR ) );
193 return ( static_cast< PointIdIterator >( ITK_NULLPTR ) );
207 return ( static_cast< PointIdIterator >( ITK_NULLPTR ) );
220 return ( static_cast< PointIdIterator >( ITK_NULLPTR ) );
261 m_PointIds.push_back( it.Value()->GetOrigin() );
283 #ifndef ITK_MANUAL_INSTANTIATION
284 #include "itkQuadEdgeMeshPolygonCell.hxx"
static int GetTopologyId()
Superclass::CellTraits CellTraits
Superclass::PointType PointType
CellTraits::QuadEdgeType QuadEdgeType
QuadEdgeType::OriginRefType VertexRefType
virtual PointIdConstIterator PointIdsBegin() const override
CellTraits::PointIdInternalIterator PointIdInternalIterator
CellType::MultiVisitor MultiVisitor
virtual CellFeatureCount GetNumberOfBoundaryFeatures(int dimension) const override
QuadEdgeMeshLineCell< CellType > EdgeCellType
Superclass::PointsContainer PointsContainer
virtual void InternalSetPointIds(PointIdInternalConstIterator first)
AutoPointer< Self > SelfAutoPointer
std::vector< EdgeCellType * > EdgeCellListType
virtual PointIdIterator PointIdsBegin() override
QuadEdgeType::DualType QEDual
TCellInterface Superclass
Superclass::CellConstAutoPointer CellConstAutoPointer
void MakePointIds() const
static const unsigned int PointDimension
virtual void SetPointId(int localId, PointIdentifier pId) override
static const double e
The base of the natural logarithm or Euler's number
QuadEdgeType * GetEdgeRingEntry() const
QuadEdgeMeshPolygonCell(PointIdentifier nPoints=0)
virtual void MakeCopy(CellAutoPointer &cell) const override
virtual CellGeometry GetType() const override
void SetEdgeRingEntry(QuadEdgeType *entry)
Superclass::CellFeatureIdentifier CellFeatureCount
virtual void SetPointIds(PointIdConstIterator first) override
Superclass::ParametricCoordArrayType ParametricCoordArrayType
QuadEdgeType::PrimalDataType PrimalDataType
Superclass::CellConstRawPointer CellConstRawPointer
Superclass::CellIdentifier CellIdentifier
static const unsigned int CellDimension
virtual ~QuadEdgeMeshPolygonCell()
Superclass::PointIdentifier PointIdentifier
CellTraits::PointIdInternalConstIterator PointIdInternalConstIterator
AutoPointer< const Self > ConstSelfAutoPointer
Superclass::CoordRepType CoordRepType
Superclass::CellFeatureIdentifier CellFeatureIdentifier
QuadEdgeMeshPolygonCell Self
const Self * ConstRawPointer
std::vector< PointIdentifier > PointIDListType
Superclass::CellRawPointer CellRawPointer
CellIdentifier GetIdent()
Superclass::UsingCellsContainer UsingCellsContainer
virtual void Accept(CellIdentifier cellId, MultiVisitor *mv) override
Superclass::CellType CellType
QuadEdgeType::DualOriginRefType FaceRefType
virtual unsigned int GetDimension() const override
virtual unsigned int GetNumberOfPoints() const override
void SetIdent(CellIdentifier cid)
Superclass::InterpolationWeightType InterpolationWeightType
CellTraits::PointIdIterator PointIdIterator
virtual PointIdentifier GetPointId(int localId) const
EdgeCellListType m_EdgeCellList
CellTraits::PointIdConstIterator PointIdConstIterator
Implements an Automatic Pointer to an object.
QuadEdgeType * m_EdgeRingEntry
QuadEdgeType::DualDataType DualDataType
virtual bool GetBoundaryFeature(int dimension, CellFeatureIdentifier cellId, CellAutoPointer &cell) override
Superclass::PixelType PixelType
virtual PointIdInternalIterator InternalPointIdsBegin()
PointIDListType m_PointIds
Superclass::CellAutoPointer CellAutoPointer
Superclass::ShapeFunctionsArrayType ShapeFunctionsArrayType
void operator=(const Self &)
virtual PointIdConstIterator PointIdsEnd() const override
virtual PointIdInternalConstIterator InternalGetPointIds() const
virtual PointIdIterator PointIdsEnd() override
Superclass::CellGeometry CellGeometry
Class that connects the QuadEdgeMesh with the Mesh.
virtual PointIdInternalIterator InternalPointIdsEnd()