ITK  5.4.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
itk::PolygonCell< TCellInterface > Class Template Reference

#include <itkPolygonCell.h>

Detailed Description

template<typename TCellInterface>
class itk::PolygonCell< TCellInterface >

Represents a polygon in a Mesh.

PolygonCell represents a polygon for a Mesh. the points of the polygon can be dynamically changed.

Template Parameters
TPixelTypeThe type associated with a point, cell, or boundary for use in storing its data.
TCellTraitsType information of mesh containing cell.

Definition at line 53 of file itkPolygonCell.h.

+ Inheritance diagram for itk::PolygonCell< TCellInterface >:
+ Collaboration diagram for itk::PolygonCell< TCellInterface >:

Public Types

using EdgeAutoPointer = typename EdgeType::SelfAutoPointer
 
using EdgeInfo = FixedArray< int, 2 >
 
using EdgeInfoDQ = std::deque< EdgeInfo >
 
using EdgeType = LineCell< TCellInterface >
 
using VertexAutoPointer = typename VertexType::SelfAutoPointer
 
using VertexType = VertexCell< TCellInterface >
 

Public Member Functions

void AddPointId (PointIdentifier)
 
void BuildEdges ()
 
void ClearPoints ()
 
bool GetBoundaryFeature (int dimension, CellFeatureIdentifier, CellAutoPointer &) override
 
unsigned int GetDimension () const override
 
virtual bool GetEdge (CellFeatureIdentifier, EdgeAutoPointer &)
 
const char * GetNameOfClass () const override
 
CellFeatureCount GetNumberOfBoundaryFeatures (int dimension) const override
 
virtual CellFeatureCount GetNumberOfEdges () const
 
unsigned int GetNumberOfPoints () const override
 
virtual CellFeatureCount GetNumberOfVertices () const
 
virtual bool GetVertex (CellFeatureIdentifier, VertexAutoPointer &)
 
 itkCellVisitMacro (CellGeometryEnum::POLYGON_CELL)
 
PointIdConstIterator PointIdsBegin () const override
 
PointIdIterator PointIdsBegin () override
 
PointIdConstIterator PointIdsEnd () const override
 
PointIdIterator PointIdsEnd () override
 
void RemovePointId (PointIdentifier)
 
void SetPointId (int localId, PointIdentifier) override
 
void SetPointIds (int dummy, int num, PointIdConstIterator first)
 
void SetPointIds (PointIdConstIterator first) override
 
void SetPointIds (PointIdConstIterator first, PointIdConstIterator last) override
 
 ~PolygonCell () override=default
 
 itkCellCommonTypedefs (PolygonCell)
 
 itkCellInheritedTypedefs (TCellInterface)
 
CellGeometryEnum GetType () const override
 
void MakeCopy (CellAutoPointer &) const override
 
 PolygonCell ()=default
 
 PolygonCell (PointIdentifier NumberOfPoints)
 

Static Public Attributes

static constexpr unsigned int CellDimension = 2
 

Protected Attributes

std::vector< EdgeInfom_Edges {}
 
std::vector< PointIdentifier > m_PointIds {}
 

Member Typedef Documentation

◆ EdgeAutoPointer

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::EdgeAutoPointer = typename EdgeType::SelfAutoPointer

Definition at line 75 of file itkPolygonCell.h.

◆ EdgeInfo

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::EdgeInfo = FixedArray<int, 2>

Definition at line 77 of file itkPolygonCell.h.

◆ EdgeInfoDQ

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::EdgeInfoDQ = std::deque<EdgeInfo>

Definition at line 78 of file itkPolygonCell.h.

◆ EdgeType

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::EdgeType = LineCell<TCellInterface>

The type of boundary for this triangle's edges.

Definition at line 74 of file itkPolygonCell.h.

◆ VertexAutoPointer

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::VertexAutoPointer = typename VertexType::SelfAutoPointer

Definition at line 71 of file itkPolygonCell.h.

◆ VertexType

template<typename TCellInterface >
using itk::PolygonCell< TCellInterface >::VertexType = VertexCell<TCellInterface>

The type of boundary for this triangle's vertices.

Definition at line 70 of file itkPolygonCell.h.

Constructor & Destructor Documentation

◆ PolygonCell() [1/2]

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::PolygonCell ( )
default

Constructor and destructor

◆ PolygonCell() [2/2]

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::PolygonCell ( PointIdentifier  NumberOfPoints)
inline

Constructor and destructor

Definition at line 150 of file itkPolygonCell.h.

◆ ~PolygonCell()

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::~PolygonCell ( )
overridedefault

Member Function Documentation

◆ AddPointId()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::AddPointId ( PointIdentifier  )

◆ BuildEdges()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::BuildEdges ( )

◆ ClearPoints()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::ClearPoints ( )

◆ GetBoundaryFeature()

template<typename TCellInterface >
bool itk::PolygonCell< TCellInterface >::GetBoundaryFeature ( int  dimension,
CellFeatureIdentifier  ,
CellAutoPointer &   
)
override

◆ GetDimension()

template<typename TCellInterface >
unsigned int itk::PolygonCell< TCellInterface >::GetDimension ( ) const
override

◆ GetEdge()

template<typename TCellInterface >
virtual bool itk::PolygonCell< TCellInterface >::GetEdge ( CellFeatureIdentifier  ,
EdgeAutoPointer  
)
virtual

◆ GetNameOfClass()

template<typename TCellInterface >
const char* itk::PolygonCell< TCellInterface >::GetNameOfClass ( ) const
override

◆ GetNumberOfBoundaryFeatures()

template<typename TCellInterface >
CellFeatureCount itk::PolygonCell< TCellInterface >::GetNumberOfBoundaryFeatures ( int  dimension) const
override

◆ GetNumberOfEdges()

template<typename TCellInterface >
virtual CellFeatureCount itk::PolygonCell< TCellInterface >::GetNumberOfEdges ( ) const
virtual

◆ GetNumberOfPoints()

template<typename TCellInterface >
unsigned int itk::PolygonCell< TCellInterface >::GetNumberOfPoints ( ) const
override

◆ GetNumberOfVertices()

template<typename TCellInterface >
virtual CellFeatureCount itk::PolygonCell< TCellInterface >::GetNumberOfVertices ( ) const
virtual

Polygon-specific interface.

◆ GetType()

template<typename TCellInterface >
CellGeometryEnum itk::PolygonCell< TCellInterface >::GetType ( ) const
inlineoverride

Implement the standard CellInterface.

Definition at line 85 of file itkPolygonCell.h.

References itk::CommonEnums::POLYGON_CELL.

◆ GetVertex()

template<typename TCellInterface >
virtual bool itk::PolygonCell< TCellInterface >::GetVertex ( CellFeatureIdentifier  ,
VertexAutoPointer  
)
virtual

◆ itkCellCommonTypedefs()

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::itkCellCommonTypedefs ( PolygonCell< TCellInterface >  )

Standard class type aliases.

◆ itkCellInheritedTypedefs()

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::itkCellInheritedTypedefs ( TCellInterface  )

Standard class type aliases.

◆ itkCellVisitMacro()

template<typename TCellInterface >
itk::PolygonCell< TCellInterface >::itkCellVisitMacro ( CellGeometryEnum::POLYGON_CELL  )

Need to add POLYGON_CELL into CellInterface.

◆ MakeCopy()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::MakeCopy ( CellAutoPointer &  ) const
override

Implement the standard CellInterface.

◆ PointIdsBegin() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::PolygonCell< TCellInterface >::PointIdsBegin ( ) const
override

◆ PointIdsBegin() [2/2]

template<typename TCellInterface >
PointIdIterator itk::PolygonCell< TCellInterface >::PointIdsBegin ( )
override

◆ PointIdsEnd() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::PolygonCell< TCellInterface >::PointIdsEnd ( ) const
override

◆ PointIdsEnd() [2/2]

template<typename TCellInterface >
PointIdIterator itk::PolygonCell< TCellInterface >::PointIdsEnd ( )
override

◆ RemovePointId()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::RemovePointId ( PointIdentifier  )

◆ SetPointId()

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::SetPointId ( int  localId,
PointIdentifier   
)
override

◆ SetPointIds() [1/3]

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::SetPointIds ( int  dummy,
int  num,
PointIdConstIterator  first 
)

◆ SetPointIds() [2/3]

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first)
override

◆ SetPointIds() [3/3]

template<typename TCellInterface >
void itk::PolygonCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first,
PointIdConstIterator  last 
)
override

Member Data Documentation

◆ CellDimension

template<typename TCellInterface >
constexpr unsigned int itk::PolygonCell< TCellInterface >::CellDimension = 2
staticconstexpr

Save some template parameter information.

Definition at line 67 of file itkPolygonCell.h.

◆ m_Edges

template<typename TCellInterface >
std::vector<EdgeInfo> itk::PolygonCell< TCellInterface >::m_Edges {}
protected

Definition at line 163 of file itkPolygonCell.h.

◆ m_PointIds

template<typename TCellInterface >
std::vector<PointIdentifier> itk::PolygonCell< TCellInterface >::m_PointIds {}
protected

Definition at line 164 of file itkPolygonCell.h.


The documentation for this class was generated from the following file: