ITK  6.0.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
itk::TetrahedronCell< TCellInterface > Class Template Reference

#include <itkTetrahedronCell.h>

Detailed Description

template<typename TCellInterface>
class itk::TetrahedronCell< TCellInterface >

TetrahedronCell represents a tetrahedron for a Mesh.

Examples
Examples/DataRepresentation/Mesh/MeshCellsIteration.cxx, Examples/DataRepresentation/Mesh/MeshCellVisitor.cxx, Examples/DataRepresentation/Mesh/MeshCellVisitor2.cxx, Examples/DataRepresentation/Mesh/MeshKComplex.cxx, and Examples/SpatialObjects/MeshSpatialObject.cxx.

Definition at line 36 of file itkTetrahedronCell.h.

+ Inheritance diagram for itk::TetrahedronCell< TCellInterface >:
+ Collaboration diagram for itk::TetrahedronCell< TCellInterface >:

Public Types

using EdgeAutoPointer = typename EdgeType::SelfAutoPointer
 
using EdgeType = LineCell< TCellInterface >
 
using FaceAutoPointer = typename FaceType::SelfAutoPointer
 
using FaceType = TriangleCell< 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 &)
 
const char * GetNameOfClass () const override
 
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 &)
 
 itkCellVisitMacro (CellGeometryEnum::TETRAHEDRON_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
 
 TetrahedronCell ()=default
 
 ~TetrahedronCell () override=default
 
 itkCellCommonTypedefs (TetrahedronCell)
 
 itkCellInheritedTypedefs (TCellInterface)
 
CellGeometryEnum GetType () const override
 
void MakeCopy (CellAutoPointer &) const override
 

Static Public Attributes

static constexpr unsigned int CellDimension = 3
 
static constexpr unsigned int NumberOfEdges = 6
 
static constexpr unsigned int NumberOfFaces = 4
 
static constexpr unsigned int NumberOfPoints = 4
 
static constexpr unsigned int NumberOfVertices = 4
 

Protected Attributes

std::array< PointIdentifier, NumberOfPointsm_PointIds
 

Additional Inherited Members

- Private Member Functions inherited from itk::TetrahedronCellTopology
 TetrahedronCellTopology ()
 
virtual ~TetrahedronCellTopology ()
 
- Static Private Attributes inherited from itk::TetrahedronCellTopology
static const int m_Edges [6][2]
 
static const int m_Faces [4][3]
 

Member Typedef Documentation

◆ EdgeAutoPointer

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::EdgeAutoPointer = typename EdgeType::SelfAutoPointer

Definition at line 57 of file itkTetrahedronCell.h.

◆ EdgeType

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::EdgeType = LineCell<TCellInterface>

The type of boundary for this triangle's edges.

Definition at line 56 of file itkTetrahedronCell.h.

◆ FaceAutoPointer

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::FaceAutoPointer = typename FaceType::SelfAutoPointer

Definition at line 61 of file itkTetrahedronCell.h.

◆ FaceType

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::FaceType = TriangleCell<TCellInterface>

The type of boundary for this hexahedron's faces.

Definition at line 60 of file itkTetrahedronCell.h.

◆ VertexAutoPointer

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::VertexAutoPointer = typename VertexType::SelfAutoPointer

Definition at line 53 of file itkTetrahedronCell.h.

◆ VertexType

template<typename TCellInterface >
using itk::TetrahedronCell< TCellInterface >::VertexType = VertexCell<TCellInterface>

The type of boundary for this triangle's vertices.

Definition at line 52 of file itkTetrahedronCell.h.

Constructor & Destructor Documentation

◆ TetrahedronCell()

template<typename TCellInterface >
itk::TetrahedronCell< TCellInterface >::TetrahedronCell ( )
default

◆ ~TetrahedronCell()

template<typename TCellInterface >
itk::TetrahedronCell< TCellInterface >::~TetrahedronCell ( )
overridedefault

Member Function Documentation

◆ EvaluatePosition()

template<typename TCellInterface >
bool itk::TetrahedronCell< TCellInterface >::EvaluatePosition ( CoordinateType *  ,
PointsContainer *  ,
CoordinateType *  ,
CoordinateType  [],
double *  ,
InterpolationWeightType *   
)
override

◆ GetBoundaryFeature()

template<typename TCellInterface >
bool itk::TetrahedronCell< TCellInterface >::GetBoundaryFeature ( int  dimension,
CellFeatureIdentifier  ,
CellAutoPointer &   
)
override

Get the boundary feature of the given dimension specified by the given cell feature Id. The Id can range from 0 to GetNumberOfBoundaryFeatures(dimension)-1.

◆ GetDimension()

template<typename TCellInterface >
unsigned int itk::TetrahedronCell< TCellInterface >::GetDimension ( ) const
override

Get the topological dimension of this cell.

◆ GetEdge()

template<typename TCellInterface >
virtual bool itk::TetrahedronCell< TCellInterface >::GetEdge ( CellFeatureIdentifier  ,
EdgeAutoPointer  
)
virtual

Get the edge specified by the given cell feature Id. The Id can range from 0 to GetNumberOfEdges()-1.

◆ GetFace()

template<typename TCellInterface >
virtual bool itk::TetrahedronCell< TCellInterface >::GetFace ( CellFeatureIdentifier  ,
FaceAutoPointer  
)
virtual

Get the face specified by the given cell feature Id. The Id can range from 0 to GetNumberOfFaces()-1.

◆ GetNameOfClass()

template<typename TCellInterface >
const char* itk::TetrahedronCell< TCellInterface >::GetNameOfClass ( ) const
override

◆ GetNumberOfBoundaryFeatures()

template<typename TCellInterface >
CellFeatureCount itk::TetrahedronCell< TCellInterface >::GetNumberOfBoundaryFeatures ( int  dimension) const
override

Get the number of boundary features of the given dimension.

◆ GetNumberOfEdges()

template<typename TCellInterface >
virtual CellFeatureCount itk::TetrahedronCell< TCellInterface >::GetNumberOfEdges ( ) const
virtual

Get the number of edges defined for the tetrahedron.

◆ GetNumberOfFaces()

template<typename TCellInterface >
virtual CellFeatureCount itk::TetrahedronCell< TCellInterface >::GetNumberOfFaces ( ) const
virtual

Get the number of faces defined for the tetrahedron.

◆ GetNumberOfPoints()

template<typename TCellInterface >
unsigned int itk::TetrahedronCell< TCellInterface >::GetNumberOfPoints ( ) const
override

Get the number of points required to define the cell.

◆ GetNumberOfVertices()

template<typename TCellInterface >
virtual CellFeatureCount itk::TetrahedronCell< TCellInterface >::GetNumberOfVertices ( ) const
virtual

Get the number of vertices defining the tetrahedron.

◆ GetType()

template<typename TCellInterface >
CellGeometryEnum itk::TetrahedronCell< TCellInterface >::GetType ( ) const
inlineoverride

Implement the standard CellInterface.

Definition at line 74 of file itkTetrahedronCell.h.

References itk::CommonEnums::TETRAHEDRON_CELL.

◆ GetVertex()

template<typename TCellInterface >
virtual bool itk::TetrahedronCell< TCellInterface >::GetVertex ( CellFeatureIdentifier  ,
VertexAutoPointer  
)
virtual

Get the vertex specified by the given cell feature Id. The Id can range from 0 to GetNumberOfVertices()-1.

◆ itkCellCommonTypedefs()

template<typename TCellInterface >
itk::TetrahedronCell< TCellInterface >::itkCellCommonTypedefs ( TetrahedronCell< TCellInterface >  )

Standard class type alias.

◆ itkCellInheritedTypedefs()

template<typename TCellInterface >
itk::TetrahedronCell< TCellInterface >::itkCellInheritedTypedefs ( TCellInterface  )

Standard class type alias.

◆ itkCellVisitMacro()

template<typename TCellInterface >
itk::TetrahedronCell< TCellInterface >::itkCellVisitMacro ( CellGeometryEnum::TETRAHEDRON_CELL  )

Visitor interface.

◆ MakeCopy()

template<typename TCellInterface >
void itk::TetrahedronCell< TCellInterface >::MakeCopy ( CellAutoPointer &  ) const
override

Implement the standard CellInterface.

◆ PointIdsBegin() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::TetrahedronCell< TCellInterface >::PointIdsBegin ( ) const
override

Get a const begin iterator to the list of point identifiers used by the cell.

◆ PointIdsBegin() [2/2]

template<typename TCellInterface >
PointIdIterator itk::TetrahedronCell< TCellInterface >::PointIdsBegin ( )
override

Get a begin iterator to the list of point identifiers used by the cell.

◆ PointIdsEnd() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::TetrahedronCell< TCellInterface >::PointIdsEnd ( ) const
override

Get a const end iterator to the list of point identifiers used by the cell.

◆ PointIdsEnd() [2/2]

template<typename TCellInterface >
PointIdIterator itk::TetrahedronCell< TCellInterface >::PointIdsEnd ( )
override

Get an end iterator to the list of point identifiers used by the cell.

◆ SetPointId()

template<typename TCellInterface >
void itk::TetrahedronCell< TCellInterface >::SetPointId ( int  localId,
PointIdentifier   
)
override

Set an individual point identifier in the cell.

◆ SetPointIds() [1/2]

template<typename TCellInterface >
void itk::TetrahedronCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first)
override

Set the point id list used by the cell. It is assumed that the given iterator can be incremented and safely de-referenced enough times to get all the point ids needed by the cell.

◆ SetPointIds() [2/2]

template<typename TCellInterface >
void itk::TetrahedronCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first,
PointIdConstIterator  last 
)
override

Set the point id list used by the cell. It is assumed that the range of iterators [first, last) contains the correct number of points needed to define the cell. The position *last is NOT referenced, so it can safely be one beyond the end of an array or other container.

Member Data Documentation

◆ CellDimension

template<typename TCellInterface >
constexpr unsigned int itk::TetrahedronCell< TCellInterface >::CellDimension = 3
staticconstexpr

Definition at line 68 of file itkTetrahedronCell.h.

◆ m_PointIds

template<typename TCellInterface >
std::array<PointIdentifier, NumberOfPoints> itk::TetrahedronCell< TCellInterface >::m_PointIds
protected
Initial value:
{ MakeFilled<std::array<PointIdentifier, NumberOfPoints>>(

Store the number of points needed for a tetrahedron.

Definition at line 183 of file itkTetrahedronCell.h.

◆ NumberOfEdges

template<typename TCellInterface >
constexpr unsigned int itk::TetrahedronCell< TCellInterface >::NumberOfEdges = 6
staticconstexpr

Definition at line 66 of file itkTetrahedronCell.h.

◆ NumberOfFaces

template<typename TCellInterface >
constexpr unsigned int itk::TetrahedronCell< TCellInterface >::NumberOfFaces = 4
staticconstexpr

Definition at line 67 of file itkTetrahedronCell.h.

◆ NumberOfPoints

template<typename TCellInterface >
constexpr unsigned int itk::TetrahedronCell< TCellInterface >::NumberOfPoints = 4
staticconstexpr

Tetrahedron-specific topology numbers.

Definition at line 64 of file itkTetrahedronCell.h.

◆ NumberOfVertices

template<typename TCellInterface >
constexpr unsigned int itk::TetrahedronCell< TCellInterface >::NumberOfVertices = 4
staticconstexpr

Definition at line 65 of file itkTetrahedronCell.h.


The documentation for this class was generated from the following file:
itk::NumericTraits::max
static constexpr T max(const T &)
Definition: itkNumericTraits.h:169