41 template<
typename TCellInterface >
42 class ITK_TEMPLATE_EXPORT
LineCell:
public TCellInterface
45 ITK_DISALLOW_COPY_AND_ASSIGN(
LineCell);
60 static constexpr
unsigned int NumberOfPoints = 2;
61 static constexpr
unsigned int NumberOfVertices = 2;
62 static constexpr
unsigned int CellDimension = 1;
66 {
return Superclass::LINE_CELL; }
67 void MakeCopy(CellAutoPointer &)
const override;
70 unsigned int GetDimension()
const override;
72 unsigned int GetNumberOfPoints()
const override;
74 CellFeatureCount GetNumberOfBoundaryFeatures(
int dimension)
const override;
76 bool GetBoundaryFeature(
int dimension, CellFeatureIdentifier, CellAutoPointer &)
override;
77 void SetPointIds(PointIdConstIterator first)
override;
79 void SetPointIds(PointIdConstIterator first,
80 PointIdConstIterator last)
override;
82 void SetPointId(
int localId, PointIdentifier)
override;
83 PointIdIterator PointIdsBegin()
override;
85 PointIdConstIterator PointIdsBegin()
const override;
87 PointIdIterator PointIdsEnd()
override;
89 PointIdConstIterator PointIdsEnd()
const override;
92 virtual CellFeatureCount GetNumberOfVertices()
const;
94 virtual bool GetVertex(CellFeatureIdentifier, VertexAutoPointer &);
101 for (
unsigned int i = 0; i < Self::NumberOfPoints; i++ )
111 PointIdentifier m_PointIds[NumberOfPoints];
115 #ifndef ITK_MANUAL_INSTANTIATION
116 #include "itkLineCell.hxx"
Represents a line segment for a Mesh.
CellGeometry GetType() const override
Define numeric traits for std::vector.
An abstract interface for cells.
#define itkCellCommonTypedefs(celltype)
Represents a single vertex for a Mesh.
#define itkCellVisitMacro(TopologyId)
typename VertexType::SelfAutoPointer VertexAutoPointer
#define itkCellInheritedTypedefs(superclassArg)