18 #ifndef itkQuadraticEdgeCell_h
19 #define itkQuadraticEdgeCell_h
36 template<
typename TCellInterface >
53 itkStaticConstMacro(NumberOfPoints,
unsigned int, 3);
54 itkStaticConstMacro(NumberOfVertices,
unsigned int, 2);
55 itkStaticConstMacro(CellDimension,
unsigned int, 1);
59 virtual CellGeometry
GetType(
void) const ITK_OVERRIDE
60 {
return Superclass::QUADRATIC_EDGE_CELL; }
61 virtual void MakeCopy(CellAutoPointer &) const ITK_OVERRIDE;
64 virtual
unsigned int GetDimension(
void) const ITK_OVERRIDE;
66 virtual
unsigned int GetNumberOfPoints(
void) const ITK_OVERRIDE;
68 virtual CellFeatureCount GetNumberOfBoundaryFeatures(
int dimension) const ITK_OVERRIDE;
70 virtual
bool GetBoundaryFeature(
int dimension, CellFeatureIdentifier, CellAutoPointer &) ITK_OVERRIDE;
71 virtual
void SetPointIds(PointIdConstIterator first) ITK_OVERRIDE;
73 virtual
void SetPointIds(PointIdConstIterator first,
74 PointIdConstIterator last) ITK_OVERRIDE;
76 virtual
void SetPointId(
int localId, PointIdentifier) ITK_OVERRIDE;
77 virtual PointIdIterator PointIdsBegin(
void) ITK_OVERRIDE;
79 virtual PointIdConstIterator PointIdsBegin(
void) const ITK_OVERRIDE;
81 virtual PointIdIterator PointIdsEnd(
void) ITK_OVERRIDE;
83 virtual PointIdConstIterator PointIdsEnd(
void) const ITK_OVERRIDE;
86 virtual CellFeatureCount GetNumberOfVertices() const;
88 virtual
bool GetVertex(CellFeatureIdentifier, VertexAutoPointer &);
95 for ( PointIdentifier i = 0; i < itkGetStaticConstMacro(NumberOfPoints); i++ )
105 virtual void EvaluateShapeFunctions(
106 const ParametricCoordArrayType & parametricCoordinates,
107 ShapeFunctionsArrayType & weights)
const ITK_OVERRIDE;
111 PointIdentifier m_PointIds[NumberOfPoints];
118 #ifndef ITK_MANUAL_INSTANTIATION
119 #include "itkQuadraticEdgeCell.hxx"
virtual CellGeometry GetType(void) const override
An abstract interface for cells.
VertexCell< TCellInterface > VertexType
static ITK_CONSTEXPR_FUNC T max(const T &)
#define itkCellCommonTypedefs(celltype)
Represents a second order line segment for a Mesh.
VertexType::SelfAutoPointer VertexAutoPointer
Represents a single vertex for a Mesh.
#define itkCellVisitMacro(TopologyId)
#define itkCellInheritedTypedefs(superclassArg)
~QuadraticEdgeCell() override