18 #ifndef itkQuadraticEdgeCell_h
19 #define itkQuadraticEdgeCell_h
36 template <
typename TCellInterface>
55 static constexpr
unsigned int NumberOfPoints = 3;
56 static constexpr
unsigned int NumberOfVertices = 2;
57 static constexpr
unsigned int CellDimension = 1;
66 MakeCopy(CellAutoPointer &)
const override;
70 GetDimension()
const override;
73 GetNumberOfPoints()
const override;
76 GetNumberOfBoundaryFeatures(
int dimension)
const override;
79 GetBoundaryFeature(
int dimension, CellFeatureIdentifier, CellAutoPointer &)
override;
81 SetPointIds(PointIdConstIterator first)
override;
84 SetPointIds(PointIdConstIterator first, PointIdConstIterator last)
override;
87 SetPointId(
int localId, PointIdentifier)
override;
89 PointIdsBegin()
override;
92 PointIdsBegin()
const override;
95 PointIdsEnd()
override;
98 PointIdsEnd()
const override;
101 virtual CellFeatureCount
102 GetNumberOfVertices()
const;
105 GetVertex(CellFeatureIdentifier, VertexAutoPointer &);
112 for (PointIdentifier i = 0; i < Self::NumberOfPoints; i++)
123 EvaluateShapeFunctions(
const ParametricCoordArrayType & parametricCoordinates,
124 ShapeFunctionsArrayType & weights)
const override;
128 PointIdentifier m_PointIds[NumberOfPoints];
132 #ifndef ITK_MANUAL_INSTANTIATION
133 # include "itkQuadraticEdgeCell.hxx"