ITK  5.4.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes | List of all members
itk::QuadEdgeMeshLineCell< TCellInterface > Class Template Reference

#include <itkQuadEdgeMeshLineCell.h>

Detailed Description

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

Class that connects the QuadEdgeMesh with the Mesh.

Parameters
TCellInterfaceBasic type for the itk*Cell. This usually comes from the MeshTraits.
Author
Eric Boix, Alex Gouaillard, Leonardo Florez

Definition at line 41 of file itkQuadEdgeMeshLineCell.h.

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

Public Types

using CellFeatureCount = typename Superclass::CellFeatureIdentifier
 
using CellTraits = typename Superclass::CellTraits
 
using CellType = typename Superclass::CellType
 
using ConstRawPointer = const Self *
 
using ConstSelfAutoPointer = AutoPointer< const Self >
 
using DualDataType = typename QEType::DualDataType
 
using FaceRefType = typename QEType::DualOriginRefType
 
using MultiVisitor = typename CellType::MultiVisitor
 
using PointIdConstIterator = typename CellTraits::PointIdConstIterator
 
using PointIdInternalConstIterator = typename CellTraits::PointIdInternalConstIterator
 
using PointIdInternalIterator = typename CellTraits::PointIdInternalIterator
 
using PointIdIterator = typename CellTraits::PointIdIterator
 
using PrimalDataType = typename QEType::PrimalDataType
 
using QEDual = typename QEType::DualType
 
using QEType = typename CellTraits::QuadEdgeType
 
using RawPointer = Self *
 
using Self = QuadEdgeMeshLineCell
 
using SelfAutoPointer = AutoPointer< Self >
 
using Superclass = TCellInterface
 
using VertexRefType = typename QEType::OriginRefType
 

Public Member Functions

void Accept (CellIdentifier cellId, MultiVisitor *mv) override
 
bool GetBoundaryFeature (int dimension, CellFeatureIdentifier cellId, CellAutoPointer &cell) override
 
unsigned int GetDimension () const override
 
CellIdentifier GetIdent ()
 
const char * GetNameOfClass () const override
 
CellFeatureCount GetNumberOfBoundaryFeatures (int dimension) const override
 
unsigned int GetNumberOfPoints () const override
 
PointIdConstIterator GetPointIds () const override
 
QETypeGetQEGeom () const
 
CellGeometryEnum GetType () const override
 
virtual PointIdInternalConstIterator InternalGetPointIds () const
 
virtual PointIdInternalIterator InternalPointIdsBegin ()
 
virtual PointIdInternalConstIterator InternalPointIdsBegin () const
 
virtual PointIdInternalIterator InternalPointIdsEnd ()
 
virtual PointIdInternalConstIterator InternalPointIdsEnd () const
 
virtual void InternalSetPointIds (PointIdInternalConstIterator first)
 
virtual void InternalSetPointIds (PointIdInternalConstIterator first, PointIdInternalConstIterator last)
 
PointIdConstIterator PointIdsBegin () const override
 
PointIdIterator PointIdsBegin () override
 
PointIdConstIterator PointIdsEnd () const override
 
PointIdIterator PointIdsEnd () override
 
void SetIdent (CellIdentifier cid)
 
void SetPointId (int localId, PointIdentifier pId) override
 
void SetPointIds (PointIdConstIterator first) override
 
void SetPointIds (PointIdConstIterator first, PointIdConstIterator last) override
 
 QuadEdgeMeshLineCell ()
 
 ~QuadEdgeMeshLineCell () override
 
void MakeCopy (CellAutoPointer &cell) const override
 
void SynchronizePointsAPI () const
 

Static Public Member Functions

static constexpr CellGeometryEnum GetTopologyId ()
 

Static Public Attributes

static constexpr unsigned int CellDimension = 2
 
static constexpr unsigned int PointDimension = Superclass::PointDimension
 

Private Attributes

CellIdentifier m_Identifier {}
 
PointIdentifier m_PointIds [2] {}
 
QETypem_QuadEdgeGeom {}
 

Member Typedef Documentation

◆ CellFeatureCount

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::CellFeatureCount = typename Superclass::CellFeatureIdentifier

Definition at line 70 of file itkQuadEdgeMeshLineCell.h.

◆ CellTraits

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::CellTraits = typename Superclass::CellTraits

Definition at line 64 of file itkQuadEdgeMeshLineCell.h.

◆ CellType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::CellType = typename Superclass::CellType

Definition at line 59 of file itkQuadEdgeMeshLineCell.h.

◆ ConstRawPointer

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::ConstRawPointer = const Self *

Definition at line 54 of file itkQuadEdgeMeshLineCell.h.

◆ ConstSelfAutoPointer

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::ConstSelfAutoPointer = AutoPointer<const Self>

Definition at line 51 of file itkQuadEdgeMeshLineCell.h.

◆ DualDataType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::DualDataType = typename QEType::DualDataType

Definition at line 93 of file itkQuadEdgeMeshLineCell.h.

◆ FaceRefType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::FaceRefType = typename QEType::DualOriginRefType

Definition at line 91 of file itkQuadEdgeMeshLineCell.h.

◆ MultiVisitor

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::MultiVisitor = typename CellType::MultiVisitor

Multivisitor type.

Definition at line 80 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdConstIterator

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdConstIterator = typename CellTraits::PointIdConstIterator

Definition at line 84 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdInternalConstIterator

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdInternalConstIterator = typename CellTraits::PointIdInternalConstIterator

Definition at line 86 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdInternalIterator

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdInternalIterator = typename CellTraits::PointIdInternalIterator

Definition at line 85 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdIterator

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdIterator = typename CellTraits::PointIdIterator

Definition at line 83 of file itkQuadEdgeMeshLineCell.h.

◆ PrimalDataType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::PrimalDataType = typename QEType::PrimalDataType

Definition at line 92 of file itkQuadEdgeMeshLineCell.h.

◆ QEDual

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::QEDual = typename QEType::DualType

Definition at line 94 of file itkQuadEdgeMeshLineCell.h.

◆ QEType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::QEType = typename CellTraits::QuadEdgeType

QE types.

Definition at line 89 of file itkQuadEdgeMeshLineCell.h.

◆ RawPointer

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::RawPointer = Self *

Definition at line 53 of file itkQuadEdgeMeshLineCell.h.

◆ Self

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::Self = QuadEdgeMeshLineCell

Standard class type aliases.

Definition at line 50 of file itkQuadEdgeMeshLineCell.h.

◆ SelfAutoPointer

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::SelfAutoPointer = AutoPointer<Self>

Definition at line 52 of file itkQuadEdgeMeshLineCell.h.

◆ Superclass

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::Superclass = TCellInterface

Definition at line 57 of file itkQuadEdgeMeshLineCell.h.

◆ VertexRefType

template<typename TCellInterface >
using itk::QuadEdgeMeshLineCell< TCellInterface >::VertexRefType = typename QEType::OriginRefType

Definition at line 90 of file itkQuadEdgeMeshLineCell.h.

Constructor & Destructor Documentation

◆ QuadEdgeMeshLineCell()

template<typename TCellInterface >
itk::QuadEdgeMeshLineCell< TCellInterface >::QuadEdgeMeshLineCell ( )

Object memory management methods.

◆ ~QuadEdgeMeshLineCell()

template<typename TCellInterface >
itk::QuadEdgeMeshLineCell< TCellInterface >::~QuadEdgeMeshLineCell ( )
override

Object memory management methods.

Member Function Documentation

◆ Accept()

template<typename TCellInterface >
void itk::QuadEdgeMeshLineCell< TCellInterface >::Accept ( CellIdentifier  cellId,
MultiVisitor mv 
)
override

TCellInterface abstract methods definition.

◆ GetBoundaryFeature()

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

◆ GetDimension()

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

◆ GetIdent()

template<typename TCellInterface >
CellIdentifier itk::QuadEdgeMeshLineCell< TCellInterface >::GetIdent ( )

◆ GetNameOfClass()

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

◆ GetNumberOfBoundaryFeatures()

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

◆ GetNumberOfPoints()

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

◆ GetPointIds()

template<typename TCellInterface >
PointIdConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::GetPointIds ( ) const
inlineoverride

Definition at line 184 of file itkQuadEdgeMeshLineCell.h.

◆ GetQEGeom()

template<typename TCellInterface >
QEType* itk::QuadEdgeMeshLineCell< TCellInterface >::GetQEGeom ( ) const
inline

Definition at line 102 of file itkQuadEdgeMeshLineCell.h.

◆ GetTopologyId()

template<typename TCellInterface >
static constexpr CellGeometryEnum itk::QuadEdgeMeshLineCell< TCellInterface >::GetTopologyId ( )
inlinestaticconstexpr

Topology related methods.

Definition at line 129 of file itkQuadEdgeMeshLineCell.h.

References itk::CommonEnums::LINE_CELL.

◆ GetType()

template<typename TCellInterface >
CellGeometryEnum itk::QuadEdgeMeshLineCell< TCellInterface >::GetType ( ) const
override

◆ InternalGetPointIds()

template<typename TCellInterface >
virtual PointIdInternalConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::InternalGetPointIds ( ) const
virtual

◆ InternalPointIdsBegin() [1/2]

template<typename TCellInterface >
virtual PointIdInternalIterator itk::QuadEdgeMeshLineCell< TCellInterface >::InternalPointIdsBegin ( )
virtual

◆ InternalPointIdsBegin() [2/2]

template<typename TCellInterface >
virtual PointIdInternalConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::InternalPointIdsBegin ( ) const
virtual

◆ InternalPointIdsEnd() [1/2]

template<typename TCellInterface >
virtual PointIdInternalIterator itk::QuadEdgeMeshLineCell< TCellInterface >::InternalPointIdsEnd ( )
virtual

◆ InternalPointIdsEnd() [2/2]

template<typename TCellInterface >
virtual PointIdInternalConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::InternalPointIdsEnd ( ) const
virtual

◆ InternalSetPointIds() [1/2]

template<typename TCellInterface >
virtual void itk::QuadEdgeMeshLineCell< TCellInterface >::InternalSetPointIds ( PointIdInternalConstIterator  first)
virtual

QuadEdge internal flavor of cell API

◆ InternalSetPointIds() [2/2]

template<typename TCellInterface >
virtual void itk::QuadEdgeMeshLineCell< TCellInterface >::InternalSetPointIds ( PointIdInternalConstIterator  first,
PointIdInternalConstIterator  last 
)
virtual

◆ MakeCopy()

template<typename TCellInterface >
void itk::QuadEdgeMeshLineCell< TCellInterface >::MakeCopy ( CellAutoPointer &  cell) const
inlineoverride

Useless methods.

Definition at line 148 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdsBegin() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdsBegin ( ) const
inlineoverride

Definition at line 191 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdsBegin() [2/2]

template<typename TCellInterface >
PointIdIterator itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdsBegin ( )
inlineoverride

Definition at line 170 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdsEnd() [1/2]

template<typename TCellInterface >
PointIdConstIterator itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdsEnd ( ) const
inlineoverride

Definition at line 198 of file itkQuadEdgeMeshLineCell.h.

◆ PointIdsEnd() [2/2]

template<typename TCellInterface >
PointIdIterator itk::QuadEdgeMeshLineCell< TCellInterface >::PointIdsEnd ( )
inlineoverride

Definition at line 177 of file itkQuadEdgeMeshLineCell.h.

◆ SetIdent()

template<typename TCellInterface >
void itk::QuadEdgeMeshLineCell< TCellInterface >::SetIdent ( CellIdentifier  cid)

Accessors for m_Identifier.

◆ SetPointId()

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

◆ SetPointIds() [1/2]

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

ITK Cell API - Iterator-related methods. The Set methods will work, not the Get. Hopefully never used ...

◆ SetPointIds() [2/2]

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

◆ SynchronizePointsAPI()

template<typename TCellInterface >
void itk::QuadEdgeMeshLineCell< TCellInterface >::SynchronizePointsAPI ( ) const
inline

helper for backward compatibility

Definition at line 206 of file itkQuadEdgeMeshLineCell.h.

Member Data Documentation

◆ CellDimension

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

Definition at line 77 of file itkQuadEdgeMeshLineCell.h.

◆ m_Identifier

template<typename TCellInterface >
CellIdentifier itk::QuadEdgeMeshLineCell< TCellInterface >::m_Identifier {}
private

In order to have constant time access at the itk level instead of of doing a search in the Mesh::Cell container.

Definition at line 240 of file itkQuadEdgeMeshLineCell.h.

◆ m_PointIds

template<typename TCellInterface >
PointIdentifier itk::QuadEdgeMeshLineCell< TCellInterface >::m_PointIds[2] {}
mutableprivate

Definition at line 242 of file itkQuadEdgeMeshLineCell.h.

◆ m_QuadEdgeGeom

template<typename TCellInterface >
QEType* itk::QuadEdgeMeshLineCell< TCellInterface >::m_QuadEdgeGeom {}
private

Definition at line 241 of file itkQuadEdgeMeshLineCell.h.

◆ PointDimension

template<typename TCellInterface >
constexpr unsigned int itk::QuadEdgeMeshLineCell< TCellInterface >::PointDimension = Superclass::PointDimension
staticconstexpr

Definition at line 76 of file itkQuadEdgeMeshLineCell.h.


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