#include <itkHexahedronCell.h>
Represents a hexahedron (cuboid) for a Mesh.
HexahedronCell represents a hexahedron, more precisely, a cuboid, for a Mesh.
NOTE: ONLY 3D implementations are instrumented. All other dimensions result in incorrect processing.
Definition at line 45 of file itkHexahedronCell.h.
Inheritance diagram for itk::HexahedronCell< TCellInterface >:
Collaboration diagram for itk::HexahedronCell< TCellInterface >:Public Types | |
| using | EdgeAutoPointer = typename EdgeType::SelfAutoPointer |
| using | EdgeType = LineCell<TCellInterface> |
| using | FaceAutoPointer = typename FaceType::SelfAutoPointer |
| using | FaceType = QuadrilateralCell<TCellInterface> |
| using | VertexAutoPointer = typename VertexType::SelfAutoPointer |
| using | VertexType = VertexCell<TCellInterface> |
Public Member Functions | |
| bool | EvaluatePosition (CoordinateType *, PointsContainer *, CoordinateType *, CoordinateType[], double *, InterpolationWeightType *) override |
| bool | GetBoundaryFeature (int dimension, CellFeatureIdentifier, CellAutoPointer &) override |
| unsigned int | GetDimension () const override |
| virtual bool | GetEdge (CellFeatureIdentifier, EdgeAutoPointer &) |
| virtual bool | GetFace (CellFeatureIdentifier, FaceAutoPointer &) |
| virtual const char * | GetNameOfClass () const |
| CellFeatureCount | GetNumberOfBoundaryFeatures (int dimension) const override |
| virtual CellFeatureCount | GetNumberOfEdges () const |
| virtual CellFeatureCount | GetNumberOfFaces () const |
| unsigned int | GetNumberOfPoints () const override |
| virtual CellFeatureCount | GetNumberOfVertices () const |
| virtual bool | GetVertex (CellFeatureIdentifier, VertexAutoPointer &) |
| HexahedronCell ()=default | |
| itkCellVisitMacro (CellGeometryEnum::HEXAHEDRON_CELL) | |
| PointIdConstIterator | PointIdsBegin () const override |
| PointIdIterator | PointIdsBegin () override |
| PointIdConstIterator | PointIdsEnd () const override |
| PointIdIterator | PointIdsEnd () override |
| void | SetPointId (int localId, PointIdentifier) override |
| void | SetPointIds (PointIdConstIterator first) override |
| void | SetPointIds (PointIdConstIterator first, PointIdConstIterator last) override |
| ~HexahedronCell () override=default | |
| itkCellCommonTypedefs (HexahedronCell) | |
| itkCellInheritedTypedefs (TCellInterface) | |
| CellGeometryEnum | GetType () const override |
| void | MakeCopy (CellAutoPointer &) const override |
Static Public Attributes | |
| static constexpr unsigned int | CellDimension = 3 |
| static constexpr unsigned int | CellDimension3D = 3 |
| static constexpr unsigned int | NumberOfEdges = 12 |
| static constexpr unsigned int | NumberOfFaces = 6 |
| static constexpr unsigned int | NumberOfPoints = 8 |
| static constexpr unsigned int | NumberOfVertices = 8 |
| static constexpr unsigned int | PointDimension3D = 3 |
Protected Member Functions | |
| void | EvaluateLocation (int &subId, PointsContainer *points, CoordinateType pcoords[Self::CellDimension], CoordinateType x[Self::CellDimension], InterpolationWeightType *weights) |
| void | InterpolationDerivs (CoordinateType pcoords[Self::CellDimension], CoordinateType derivs[Self::CellDimension *Self::NumberOfPoints]) |
| void | InterpolationFunctions (CoordinateType pcoords[Self::CellDimension], InterpolationWeightType sf[Self::NumberOfPoints]) |
Protected Attributes | |
| std::array< PointIdentifier, NumberOfPoints > | m_PointIds |
Additional Inherited Members | |
Private Member Functions inherited from itk::HexahedronCellTopology | |
| HexahedronCellTopology () | |
| virtual | ~HexahedronCellTopology () |
Static Private Attributes inherited from itk::HexahedronCellTopology | |
| static const int | m_Edges [12][2] |
| static const int | m_Faces [6][4] |
| using itk::HexahedronCell< TCellInterface >::EdgeAutoPointer = typename EdgeType::SelfAutoPointer |
Definition at line 66 of file itkHexahedronCell.h.
| using itk::HexahedronCell< TCellInterface >::EdgeType = LineCell<TCellInterface> |
The type of boundary for this triangle's edges.
Definition at line 65 of file itkHexahedronCell.h.
| using itk::HexahedronCell< TCellInterface >::FaceAutoPointer = typename FaceType::SelfAutoPointer |
Definition at line 70 of file itkHexahedronCell.h.
| using itk::HexahedronCell< TCellInterface >::FaceType = QuadrilateralCell<TCellInterface> |
The type of boundary for this hexahedron's faces.
Definition at line 69 of file itkHexahedronCell.h.
| using itk::HexahedronCell< TCellInterface >::VertexAutoPointer = typename VertexType::SelfAutoPointer |
Definition at line 62 of file itkHexahedronCell.h.
| using itk::HexahedronCell< TCellInterface >::VertexType = VertexCell<TCellInterface> |
The type of boundary for this triangle's vertices.
Definition at line 61 of file itkHexahedronCell.h.
|
default |
|
overridedefault |
|
protected |
|
override |
Evaluate the position inside the cell
|
override |
|
nodiscardoverride |
|
virtual |
|
virtual |
|
virtual |
|
override |
|
virtual |
|
virtual |
|
nodiscardoverride |
|
virtual |
Hexahedron-specific interface.
|
inlinenodiscardoverride |
Implement the standard CellInterface.
Definition at line 90 of file itkHexahedronCell.h.
|
virtual |
|
protected |
|
protected |
| itk::HexahedronCell< TCellInterface >::itkCellCommonTypedefs | ( | HexahedronCell< TCellInterface > | ) |
Standard class type aliases.
| itk::HexahedronCell< TCellInterface >::itkCellInheritedTypedefs | ( | TCellInterface | ) |
Standard class type aliases.
| itk::HexahedronCell< TCellInterface >::itkCellVisitMacro | ( | CellGeometryEnum::HEXAHEDRON_CELL | ) |
Visitor interface
|
override |
Implement the standard CellInterface.
|
override |
|
override |
|
override |
|
override |
|
override |
|
override |
|
override |
|
staticconstexpr |
Definition at line 77 of file itkHexahedronCell.h.
|
staticconstexpr |
HARDCODE Implementation requirements, while allowing general interface. The General interface is needed to facilitate the general SpatialObject loader.
Definition at line 84 of file itkHexahedronCell.h.
|
protected |
Store the number of points needed for a hexahedron.
Definition at line 159 of file itkHexahedronCell.h.
|
staticconstexpr |
Definition at line 75 of file itkHexahedronCell.h.
|
staticconstexpr |
Definition at line 76 of file itkHexahedronCell.h.
|
staticconstexpr |
Hexahedron-specific topology numbers.
Definition at line 73 of file itkHexahedronCell.h.
|
staticconstexpr |
Definition at line 74 of file itkHexahedronCell.h.
|
staticconstexpr |
Definition at line 85 of file itkHexahedronCell.h.