28#ifndef itkPolygonCell_h
29#define itkPolygonCell_h
52template <
typename TCellInterface>
67 static constexpr unsigned int CellDimension = 2;
109 SetPointIds(PointIdConstIterator first, PointIdConstIterator last)
override;
137 virtual CellFeatureCount
140 virtual CellFeatureCount
152 for (PointIdentifier i = 0; i < NumberOfPoints; ++i)
163 std::vector<EdgeInfo> m_Edges{};
164 std::vector<PointIdentifier> m_PointIds{};
168#ifndef ITK_MANUAL_INSTANTIATION
169# include "itkPolygonCell.hxx"
Simulate a standard C array with copy semantics.
Represents a line segment for a Mesh.
Define additional traits for native types such as int or float.
Represents a polygon in a Mesh.
unsigned int GetNumberOfPoints() const override
unsigned int GetDimension() const override
CellFeatureCount GetNumberOfBoundaryFeatures(int dimension) const override
~PolygonCell() override=default
itkCellCommonTypedefs(PolygonCell)
typename EdgeType::SelfAutoPointer EdgeAutoPointer
itkCellVisitMacro(CellGeometryEnum::POLYGON_CELL)
void RemovePointId(PointIdentifier)
PointIdConstIterator PointIdsEnd() const override
PointIdIterator PointIdsEnd() override
std::deque< EdgeInfo > EdgeInfoDQ
virtual CellFeatureCount GetNumberOfEdges() const
PolygonCell(PointIdentifier NumberOfPoints)
void SetPointIds(PointIdConstIterator first) override
CellGeometryEnum GetType() const override
virtual bool GetEdge(CellFeatureIdentifier, EdgeAutoPointer &)
itkCellInheritedTypedefs(TCellInterface)
void SetPointId(int localId, PointIdentifier) override
PointIdConstIterator PointIdsBegin() const override
void SetPointIds(int dummy, int num, PointIdConstIterator first)
virtual bool GetVertex(CellFeatureIdentifier, VertexAutoPointer &)
PointIdIterator PointIdsBegin() override
void SetPointIds(PointIdConstIterator first, PointIdConstIterator last) override
virtual CellFeatureCount GetNumberOfVertices() const
typename VertexType::SelfAutoPointer VertexAutoPointer
void AddPointId(PointIdentifier)
bool GetBoundaryFeature(int dimension, CellFeatureIdentifier, CellAutoPointer &) override
void MakeCopy(CellAutoPointer &) const override
Represents a single vertex for a Mesh.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....