18#ifndef itkQuadraticTriangleCell_h
19#define itkQuadraticTriangleCell_h
35template <
typename TCellInterface>
37 :
public TCellInterface
60 static constexpr unsigned int NumberOfPoints = 6;
61 static constexpr unsigned int NumberOfVertices = 3;
62 static constexpr unsigned int NumberOfEdges = 3;
63 static constexpr unsigned int CellDimension = 2;
90 SetPointIds(PointIdConstIterator first, PointIdConstIterator last)
override;
107 virtual CellFeatureCount
110 virtual CellFeatureCount
126 ShapeFunctionsArrayType & weights)
const override;
135 std::array<PointIdentifier, NumberOfPoints> m_PointIds{ MakeFilled<std::array<PointIdentifier, NumberOfPoints>>(
140#ifndef ITK_MANUAL_INSTANTIATION
141# include "itkQuadraticTriangleCell.hxx"
static constexpr T max(const T &)
Represents a second order line segment for a Mesh.
QuadraticTriangleCellTopology holds data defining the topological connections of the vertices and edg...
Represents a second order triangular patch for a Mesh.
void EvaluateShapeFunctions(const ParametricCoordArrayType ¶metricCoordinates, ShapeFunctionsArrayType &weights) const override
PointIdIterator PointIdsEnd() override
CellFeatureCount GetNumberOfBoundaryFeatures(int dimension) const override
CellGeometryEnum GetType() const override
itkCellVisitMacro(CellGeometryEnum::QUADRATIC_TRIANGLE_CELL)
PointIdConstIterator PointIdsBegin() const override
~QuadraticTriangleCell() override=default
virtual bool GetVertex(CellFeatureIdentifier, VertexAutoPointer &)
void MakeCopy(CellAutoPointer &) const override
void SetPointIds(PointIdConstIterator first) override
itkCellCommonTypedefs(QuadraticTriangleCell)
void SetPointId(int localId, PointIdentifier) override
virtual CellFeatureCount GetNumberOfVertices() const
itkCellInheritedTypedefs(TCellInterface)
virtual bool GetEdge(CellFeatureIdentifier, EdgeAutoPointer &)
unsigned int GetDimension() const override
virtual CellFeatureCount GetNumberOfEdges() const
PointIdConstIterator PointIdsEnd() const override
typename VertexType::SelfAutoPointer VertexAutoPointer
void SetPointIds(PointIdConstIterator first, PointIdConstIterator last) override
unsigned int GetNumberOfPoints() const override
bool GetBoundaryFeature(int dimension, CellFeatureIdentifier, CellAutoPointer &) override
typename EdgeType::SelfAutoPointer EdgeAutoPointer
QuadraticTriangleCell()=default
PointIdIterator PointIdsBegin() override
Represents a single vertex for a Mesh.
@ QUADRATIC_TRIANGLE_CELL
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....