ITK  4.6.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Attributes | Private Member Functions | List of all members
itk::TriangleCell< TCellInterface > Class Template Reference

#include <itkTriangleCell.h>

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

Detailed Description

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

TriangleCell represents a triangle for a Mesh.

Template parameters for TriangleCell:

TPixelType = The type associated with a point, cell, or boundary for use in storing its data.

TCellTraits = Type information of mesh containing cell.

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

Definition at line 45 of file itkTriangleCell.h.

Public Types

typedef EdgeType::SelfAutoPointer EdgeAutoPointer
 
typedef LineCell< TCellInterface > EdgeType
 
typedef VertexType::SelfAutoPointer VertexAutoPointer
 
typedef VertexCell
< TCellInterface > 
VertexType
 

Public Member Functions

CoordRepType ComputeArea (PointsContainer *)
 
PointType ComputeBarycenter (CoordRepType *, PointsContainer *)
 
PointType ComputeCenterOfGravity (PointsContainer *)
 
PointType ComputeCircumCenter (PointsContainer *)
 
virtual bool EvaluatePosition (CoordRepType *, PointsContainer *, CoordRepType *, CoordRepType[], double *, InterpolationWeightType *)
 
virtual bool GetBoundaryFeature (int dimension, CellFeatureIdentifier, CellAutoPointer &)
 
virtual unsigned int GetDimension (void) const
 
virtual bool GetEdge (CellFeatureIdentifier, EdgeAutoPointer &)
 
virtual const char * GetNameOfClass () const
 
virtual CellFeatureCount GetNumberOfBoundaryFeatures (int dimension) const
 
virtual CellFeatureCount GetNumberOfEdges (void) const
 
virtual unsigned int GetNumberOfPoints (void) const
 
virtual CellFeatureCount GetNumberOfVertices (void) const
 
virtual bool GetVertex (CellFeatureIdentifier, VertexAutoPointer &)
 
 itkCellVisitMacro (Superclass::TRIANGLE_CELL)
 
virtual PointIdIterator PointIdsBegin (void)
 
virtual PointIdConstIterator PointIdsBegin (void) const
 
virtual PointIdIterator PointIdsEnd (void)
 
virtual PointIdConstIterator PointIdsEnd (void) const
 
virtual void SetPointId (int localId, PointIdentifier)
 
virtual void SetPointIds (PointIdConstIterator first)
 
virtual void SetPointIds (PointIdConstIterator first, PointIdConstIterator last)
 
 TriangleCell ()
 
 ~TriangleCell ()
 
 itkCellCommonTypedefs (TriangleCell)
 
 itkCellInheritedTypedefs (TCellInterface)
 
virtual CellGeometry GetType (void) const
 
virtual void MakeCopy (CellAutoPointer &) const
 

Static Public Attributes

static const unsigned int NumberOfPoints = 3
 
static const unsigned int NumberOfVertices = 3
 
static const unsigned int NumberOfEdges = 3
 
static const unsigned int CellDimension = 2
 

Protected Attributes

std::vector< PointIdentifier > m_PointIds
 

Private Member Functions

double DistanceToLine (PointType x, PointType p1, PointType p2, double &t, CoordRepType *closestPoint)
 
double DistanceToLine (PointType x, PointType p1, PointType p2, double &t, PointType &closestPoint)
 
void operator= (const Self &)
 
 TriangleCell (const Self &)
 
- Private Member Functions inherited from itk::TriangleCellTopology
 TriangleCellTopology ()
 
virtual ~TriangleCellTopology ()
 

Additional Inherited Members

- Static Private Attributes inherited from itk::TriangleCellTopology
static const int m_Edges [3][2]
 

Member Typedef Documentation

template<typename TCellInterface >
typedef EdgeType::SelfAutoPointer itk::TriangleCell< TCellInterface >::EdgeAutoPointer

Definition at line 63 of file itkTriangleCell.h.

template<typename TCellInterface >
typedef LineCell< TCellInterface > itk::TriangleCell< TCellInterface >::EdgeType

The type of boundary for this triangle's edges.

Definition at line 62 of file itkTriangleCell.h.

template<typename TCellInterface >
typedef VertexType::SelfAutoPointer itk::TriangleCell< TCellInterface >::VertexAutoPointer

Definition at line 59 of file itkTriangleCell.h.

template<typename TCellInterface >
typedef VertexCell< TCellInterface > itk::TriangleCell< TCellInterface >::VertexType

The type of boundary for this triangle's vertices.

Definition at line 55 of file itkTriangleCell.h.

Constructor & Destructor Documentation

template<typename TCellInterface >
itk::TriangleCell< TCellInterface >::TriangleCell ( )
inline

Definition at line 129 of file itkTriangleCell.h.

template<typename TCellInterface >
itk::TriangleCell< TCellInterface >::~TriangleCell ( )
inline

Definition at line 132 of file itkTriangleCell.h.

template<typename TCellInterface >
itk::TriangleCell< TCellInterface >::TriangleCell ( const Self &  )
private

Member Function Documentation

template<typename TCellInterface >
CoordRepType itk::TriangleCell< TCellInterface >::ComputeArea ( PointsContainer *  )

Compute Area to a TriangleCell given a PointsContainer.

template<typename TCellInterface >
PointType itk::TriangleCell< TCellInterface >::ComputeBarycenter ( CoordRepType *  ,
PointsContainer *   
)
template<typename TCellInterface >
PointType itk::TriangleCell< TCellInterface >::ComputeCenterOfGravity ( PointsContainer *  )
template<typename TCellInterface >
PointType itk::TriangleCell< TCellInterface >::ComputeCircumCenter ( PointsContainer *  )
template<typename TCellInterface >
double itk::TriangleCell< TCellInterface >::DistanceToLine ( PointType  x,
PointType  p1,
PointType  p2,
double &  t,
CoordRepType *  closestPoint 
)
private

Computes the SQUARED distance between a point and a line segment defined by two other points

template<typename TCellInterface >
double itk::TriangleCell< TCellInterface >::DistanceToLine ( PointType  x,
PointType  p1,
PointType  p2,
double &  t,
PointType &  closestPoint 
)
private
template<typename TCellInterface >
virtual bool itk::TriangleCell< TCellInterface >::EvaluatePosition ( CoordRepType *  ,
PointsContainer *  ,
CoordRepType *  ,
CoordRepType  [],
double *  ,
InterpolationWeightType *   
)
virtual
template<typename TCellInterface >
virtual bool itk::TriangleCell< TCellInterface >::GetBoundaryFeature ( int  dimension,
CellFeatureIdentifier  ,
CellAutoPointer &   
)
virtual
template<typename TCellInterface >
virtual unsigned int itk::TriangleCell< TCellInterface >::GetDimension ( void  ) const
virtual
template<typename TCellInterface >
virtual bool itk::TriangleCell< TCellInterface >::GetEdge ( CellFeatureIdentifier  ,
EdgeAutoPointer  
)
virtual
template<typename TCellInterface >
virtual const char* itk::TriangleCell< TCellInterface >::GetNameOfClass ( ) const
virtual

Standard part of every itk Object.

template<typename TCellInterface >
virtual CellFeatureCount itk::TriangleCell< TCellInterface >::GetNumberOfBoundaryFeatures ( int  dimension) const
virtual
template<typename TCellInterface >
virtual CellFeatureCount itk::TriangleCell< TCellInterface >::GetNumberOfEdges ( void  ) const
virtual
template<typename TCellInterface >
virtual unsigned int itk::TriangleCell< TCellInterface >::GetNumberOfPoints ( void  ) const
virtual
template<typename TCellInterface >
virtual CellFeatureCount itk::TriangleCell< TCellInterface >::GetNumberOfVertices ( void  ) const
virtual

Triangle-specific interface.

template<typename TCellInterface >
virtual CellGeometry itk::TriangleCell< TCellInterface >::GetType ( void  ) const
inlinevirtual

Implement the standard CellInterface.

Definition at line 73 of file itkTriangleCell.h.

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

Standard class typedefs.

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

Standard class typedefs.

template<typename TCellInterface >
itk::TriangleCell< TCellInterface >::itkCellVisitMacro ( Superclass::TRIANGLE_CELL  )

Cell visitor interface.

template<typename TCellInterface >
virtual void itk::TriangleCell< TCellInterface >::MakeCopy ( CellAutoPointer &  ) const
virtual

Implement the standard CellInterface.

template<typename TCellInterface >
void itk::TriangleCell< TCellInterface >::operator= ( const Self &  )
private
template<typename TCellInterface >
virtual PointIdIterator itk::TriangleCell< TCellInterface >::PointIdsBegin ( void  )
virtual
template<typename TCellInterface >
virtual PointIdConstIterator itk::TriangleCell< TCellInterface >::PointIdsBegin ( void  ) const
virtual
template<typename TCellInterface >
virtual PointIdIterator itk::TriangleCell< TCellInterface >::PointIdsEnd ( void  )
virtual
template<typename TCellInterface >
virtual PointIdConstIterator itk::TriangleCell< TCellInterface >::PointIdsEnd ( void  ) const
virtual
template<typename TCellInterface >
virtual void itk::TriangleCell< TCellInterface >::SetPointId ( int  localId,
PointIdentifier   
)
virtual
template<typename TCellInterface >
virtual void itk::TriangleCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first)
virtual
template<typename TCellInterface >
virtual void itk::TriangleCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first,
PointIdConstIterator  last 
)
virtual

Member Data Documentation

template<typename TCellInterface >
const unsigned int itk::TriangleCell< TCellInterface >::CellDimension = 2
static

Triangle-specific topology numbers.

Definition at line 69 of file itkTriangleCell.h.

template<typename TCellInterface >
std::vector< PointIdentifier > itk::TriangleCell< TCellInterface >::m_PointIds
protected

Store the number of points needed for a triangle.

Definition at line 136 of file itkTriangleCell.h.

template<typename TCellInterface >
const unsigned int itk::TriangleCell< TCellInterface >::NumberOfEdges = 3
static

Triangle-specific topology numbers.

Definition at line 68 of file itkTriangleCell.h.

template<typename TCellInterface >
const unsigned int itk::TriangleCell< TCellInterface >::NumberOfPoints = 3
static

Triangle-specific topology numbers.

Definition at line 66 of file itkTriangleCell.h.

template<typename TCellInterface >
const unsigned int itk::TriangleCell< TCellInterface >::NumberOfVertices = 3
static

Triangle-specific topology numbers.

Definition at line 67 of file itkTriangleCell.h.


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