ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itk::QuadrilateralCell< TCellInterface > Class Template Reference

#include <itkQuadrilateralCell.h>

Detailed Description

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

Represents a quadrilateral for a Mesh.

Definition at line 37 of file itkQuadrilateralCell.h.

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

Public Types

using EdgeAutoPointer = typename EdgeType::SelfAutoPointer
 
using EdgeType = LineCell<TCellInterface>
 
using VertexAutoPointer = typename VertexType::SelfAutoPointer
 
using VertexType = VertexCell<TCellInterface>
 

Public Member Functions

bool EvaluatePosition (CoordinateType *x, PointsContainer *points, CoordinateType *closestPoint, CoordinateType[CellDimension], double *dist2, InterpolationWeightType *weight) override
 
bool GetBoundaryFeature (int dimension, CellFeatureIdentifier, CellAutoPointer &) override
 
unsigned int GetDimension () const override
 
virtual bool GetEdge (CellFeatureIdentifier, EdgeAutoPointer &)
 
const char * GetNameOfClass () const override
 
CellFeatureCount GetNumberOfBoundaryFeatures (int dimension) const override
 
virtual CellFeatureCount GetNumberOfEdges () const
 
unsigned int GetNumberOfPoints () const override
 
virtual CellFeatureCount GetNumberOfVertices () const
 
virtual bool GetVertex (CellFeatureIdentifier, VertexAutoPointer &)
 
 itkCellVisitMacro (CellGeometryEnum::QUADRILATERAL_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
 
 itkCellCommonTypedefs (QuadrilateralCell)
 
 itkCellInheritedTypedefs (TCellInterface)
 
CellGeometryEnum GetType () const override
 
void MakeCopy (CellAutoPointer &) const override
 
 QuadrilateralCell ()=default
 
 ~QuadrilateralCell () override=default
 

Static Public Attributes

static constexpr unsigned int CellDimension = 2
 
static constexpr unsigned int NumberOfDerivatives = 8
 
static constexpr unsigned int NumberOfEdges = 4
 
static constexpr unsigned int NumberOfPoints = 4
 
static constexpr unsigned int NumberOfVertices = 4
 

Protected Member Functions

void EvaluateLocation (int &subId, const PointsContainer *points, const CoordinateType pointCoords[PointDimension], CoordinateType x[PointDimension], InterpolationWeightType *weights)
 
void InterpolationDerivs (const CoordinateType pointCoords[CellDimension], CoordinateType derivs[NumberOfDerivatives])
 
void InterpolationFunctions (const CoordinateType pointCoords[CellDimension], InterpolationWeightType weights[NumberOfPoints])
 

Protected Attributes

std::array< PointIdentifier, NumberOfPointsm_PointIds
 

Additional Inherited Members

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

Member Typedef Documentation

◆ EdgeAutoPointer

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

Definition at line 58 of file itkQuadrilateralCell.h.

◆ EdgeType

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

The type of boundary for this triangle's edges.

Definition at line 57 of file itkQuadrilateralCell.h.

◆ VertexAutoPointer

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

Definition at line 54 of file itkQuadrilateralCell.h.

◆ VertexType

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

The type of boundary for this triangle's vertices.

Definition at line 53 of file itkQuadrilateralCell.h.

Constructor & Destructor Documentation

◆ QuadrilateralCell()

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

Constructor and destructor

◆ ~QuadrilateralCell()

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

Constructor and destructor

Member Function Documentation

◆ EvaluateLocation()

template<typename TCellInterface>
void itk::QuadrilateralCell< TCellInterface >::EvaluateLocation ( int & subId,
const PointsContainer * points,
const CoordinateType pointCoords[PointDimension],
CoordinateType x[PointDimension],
InterpolationWeightType * weights )
protected

◆ EvaluatePosition()

template<typename TCellInterface>
bool itk::QuadrilateralCell< TCellInterface >::EvaluatePosition ( CoordinateType * x,
PointsContainer * points,
CoordinateType * closestPoint,
CoordinateType [CellDimension],
double * dist2,
InterpolationWeightType * weight )
override

Evaluate the position inside the cell

◆ GetBoundaryFeature()

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

◆ GetDimension()

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

◆ GetEdge()

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

◆ GetNameOfClass()

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

◆ GetNumberOfBoundaryFeatures()

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

◆ GetNumberOfEdges()

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

◆ GetNumberOfPoints()

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

◆ GetNumberOfVertices()

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

Quadrilateral-specific interface.

◆ GetType()

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

Implement the standard CellInterface.

Definition at line 69 of file itkQuadrilateralCell.h.

◆ GetVertex()

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

◆ InterpolationDerivs()

template<typename TCellInterface>
void itk::QuadrilateralCell< TCellInterface >::InterpolationDerivs ( const CoordinateType pointCoords[CellDimension],
CoordinateType derivs[NumberOfDerivatives] )
protected

◆ InterpolationFunctions()

template<typename TCellInterface>
void itk::QuadrilateralCell< TCellInterface >::InterpolationFunctions ( const CoordinateType pointCoords[CellDimension],
InterpolationWeightType weights[NumberOfPoints] )
protected

◆ itkCellCommonTypedefs()

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

Standard class type aliases.

◆ itkCellInheritedTypedefs()

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

Standard class type aliases.

◆ itkCellVisitMacro()

template<typename TCellInterface>
itk::QuadrilateralCell< TCellInterface >::itkCellVisitMacro ( CellGeometryEnum::QUADRILATERAL_CELL )

Visitor interface

◆ MakeCopy()

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

Implement the standard CellInterface.

◆ PointIdsBegin() [1/2]

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

◆ PointIdsBegin() [2/2]

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

◆ PointIdsEnd() [1/2]

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

◆ PointIdsEnd() [2/2]

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

◆ SetPointId()

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

◆ SetPointIds() [1/2]

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

◆ SetPointIds() [2/2]

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

Member Data Documentation

◆ CellDimension

template<typename TCellInterface>
unsigned int itk::QuadrilateralCell< TCellInterface >::CellDimension = 2
staticconstexpr

Definition at line 64 of file itkQuadrilateralCell.h.

◆ m_PointIds

template<typename TCellInterface>
std::array<PointIdentifier, NumberOfPoints> itk::QuadrilateralCell< TCellInterface >::m_PointIds
protected
Initial value:
static constexpr T max(const T &)
constexpr TContainer MakeFilled(typename TContainer::const_reference value)

Store the number of points needed for a quadrilateral.

Definition at line 139 of file itkQuadrilateralCell.h.

◆ NumberOfDerivatives

template<typename TCellInterface>
unsigned int itk::QuadrilateralCell< TCellInterface >::NumberOfDerivatives = 8
staticconstexpr

Definition at line 65 of file itkQuadrilateralCell.h.

◆ NumberOfEdges

template<typename TCellInterface>
unsigned int itk::QuadrilateralCell< TCellInterface >::NumberOfEdges = 4
staticconstexpr

Definition at line 63 of file itkQuadrilateralCell.h.

◆ NumberOfPoints

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

Quadrilateral-specific topology numbers.

Definition at line 61 of file itkQuadrilateralCell.h.

◆ NumberOfVertices

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

Definition at line 62 of file itkQuadrilateralCell.h.


The documentation for this class was generated from the following file: