28 #ifndef itkPolygonCell_h
29 #define itkPolygonCell_h
52 template<
typename TCellInterface >
67 static constexpr
unsigned int CellDimension = 2;
85 {
return Superclass::POLYGON_CELL; }
86 void MakeCopy(CellAutoPointer &)
const override;
89 unsigned int GetDimension()
const override;
91 unsigned int GetNumberOfPoints()
const override;
93 CellFeatureCount GetNumberOfBoundaryFeatures(
int dimension)
const override;
95 bool GetBoundaryFeature(
int dimension, CellFeatureIdentifier, CellAutoPointer &)
override;
97 void SetPointIds(PointIdConstIterator first)
override;
99 void SetPointIds(PointIdConstIterator first,
100 PointIdConstIterator last)
override;
102 void AddPointId(PointIdentifier);
103 void RemovePointId(PointIdentifier);
104 void SetPointIds(
int dummy,
int num, PointIdConstIterator first);
110 void SetPointId(
int localId, PointIdentifier)
override;
111 PointIdIterator PointIdsBegin()
override;
113 PointIdConstIterator PointIdsBegin()
const override;
115 PointIdIterator PointIdsEnd()
override;
117 PointIdConstIterator PointIdsEnd()
const override;
120 virtual CellFeatureCount GetNumberOfVertices()
const;
122 virtual CellFeatureCount GetNumberOfEdges()
const;
124 virtual bool GetVertex(CellFeatureIdentifier, VertexAutoPointer &);
125 virtual bool GetEdge(CellFeatureIdentifier, EdgeAutoPointer &);
131 for ( PointIdentifier i = 0; i < NumberOfPoints; i++ )
147 #ifndef ITK_MANUAL_INSTANTIATION
148 #include "itkPolygonCell.hxx"
Represents a line segment for a Mesh.
Define numeric traits for std::vector.
std::deque< EdgeInfo > EdgeInfoDQ
typename VertexType::SelfAutoPointer VertexAutoPointer
An abstract interface for cells.
PolygonCell(PointIdentifier NumberOfPoints)
Simulate a standard C array with copy semnatics.
#define itkCellCommonTypedefs(celltype)
typename EdgeType::SelfAutoPointer EdgeAutoPointer
Represents a polygon in a Mesh.
CellGeometry GetType() const override
std::vector< PointIdentifier > m_PointIds
std::vector< EdgeInfo > m_Edges
Represents a single vertex for a Mesh.
#define itkCellVisitMacro(TopologyId)
#define itkCellInheritedTypedefs(superclassArg)