Orfeo Toolbox  3.16
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | Private Member Functions | Static Private Attributes
itk::TriangleCell< TCellInterface > Class Template Reference

#include <itkTriangleCell.h>

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

List of all members.

Public Types

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

Public Member Functions

 TriangleCell ()
 ~TriangleCell ()
CoordRepType ComputeArea (PointsContainer *)
 Compute Area to a TriangleCell given a 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 CellGeometry GetType (void) const
virtual bool GetVertex (CellFeatureIdentifier, VertexAutoPointer &)
 itkCellCommonTypedefs (TriangleCell)
 itkCellInheritedTypedefs (TCellInterface)
 itkCellVisitMacro (Superclass::TRIANGLE_CELL)
virtual void MakeCopy (CellAutoPointer &) const
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)

Static Public Attributes

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

Protected Attributes

std::vector< PointIdentifier > m_PointIds

Private Member Functions

 TriangleCell (const Self &)
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 &)

Static Private Attributes

static const int m_Edges [3][2] = { {0,1}, {1,2}, {2,0} }

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.

Definition at line 45 of file itkTriangleCell.h.


Member Typedef Documentation

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

Definition at line 62 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 61 of file itkTriangleCell.h.

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

Definition at line 58 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 54 of file itkTriangleCell.h.


Constructor & Destructor Documentation

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

Definition at line 114 of file itkTriangleCell.h.

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

Definition at line 117 of file itkTriangleCell.h.

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

Member Function Documentation

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

Compute Area to a TriangleCell given a PointsContainer.

Definition at line 383 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointType itk::TriangleCell< TCellInterface >::ComputeBarycenter ( CoordRepType *  iWeights,
PointsContainer *  iPoints 
)

Definition at line 400 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointType itk::TriangleCell< TCellInterface >::ComputeCenterOfGravity ( PointsContainer *  iPoints)

Definition at line 430 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointType itk::TriangleCell< TCellInterface >::ComputeCircumCenter ( PointsContainer *  iPoints)

Definition at line 439 of file itkTriangleCell.txx.

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

Compute distance to finite line. Returns parametric coordinate t and point location on line.

Definition at line 310 of file itkTriangleCell.txx.

template<typename TCellInterface >
double itk::TriangleCell< TCellInterface >::DistanceToLine ( PointType  x,
PointType  p1,
PointType  p2,
double &  t,
PointType &  closestPoint 
)
private

Definition at line 335 of file itkTriangleCell.txx.

template<typename TCellInterface >
bool itk::TriangleCell< TCellInterface >::EvaluatePosition ( CoordRepType *  ,
PointsContainer *  ,
CoordRepType *  ,
CoordRepType  [],
double *  ,
InterpolationWeightType *   
)
virtual

Evaluate the position of a given point inside the cell

Definition at line 481 of file itkTriangleCell.txx.

template<typename TCellInterface >
bool itk::TriangleCell< TCellInterface >::GetBoundaryFeature ( int  dimension,
CellFeatureIdentifier  featureId,
CellAutoPointer &  cellPointer 
)
virtual

Standard CellInterface: 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.

Definition at line 91 of file itkTriangleCell.txx.

References itk::TransferAutoPointer().

template<typename TCellInterface >
unsigned int itk::TriangleCell< TCellInterface >::GetDimension ( void  ) const
virtual

Standard CellInterface: Get the topological dimension of this cell.

Definition at line 45 of file itkTriangleCell.txx.

template<typename TCellInterface >
bool itk::TriangleCell< TCellInterface >::GetEdge ( CellFeatureIdentifier  edgeId,
EdgeAutoPointer edgePointer 
)
virtual

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

Definition at line 294 of file itkTriangleCell.txx.

References itk::LineCell< TCellInterface >::SetPointId().

template<typename TCellInterface >
virtual const char* itk::TriangleCell< TCellInterface >::GetNameOfClass ( ) const
virtual

Standard part of every itk Object.

template<typename TCellInterface >
TriangleCell< TCellInterface >::CellFeatureCount itk::TriangleCell< TCellInterface >::GetNumberOfBoundaryFeatures ( int  dimension) const
virtual

Standard CellInterface: Get the number of boundary features of the given dimension.

Definition at line 71 of file itkTriangleCell.txx.

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

Triangle-specific: Get the number of edges defined for the triangle.

Definition at line 265 of file itkTriangleCell.txx.

template<typename TCellInterface >
unsigned int itk::TriangleCell< TCellInterface >::GetNumberOfPoints ( void  ) const
virtual

Standard CellInterface: Get the number of points required to define the cell.

Definition at line 58 of file itkTriangleCell.txx.

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

Triangle-specific interface.

Triangle-specific: Get the number of vertices defining the triangle.

Definition at line 252 of file itkTriangleCell.txx.

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

Implement the standard CellInterface.

Definition at line 71 of file itkTriangleCell.h.

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

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

Definition at line 278 of file itkTriangleCell.txx.

References itk::VertexCell< TCellInterface >::SetPointId().

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

Standard class typedefs.

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

Cell visitor interface.

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

Standard CellInterface:

Definition at line 31 of file itkTriangleCell.txx.

template<typename TCellInterface >
void itk::TriangleCell< TCellInterface >::operator= ( const Self &  )
private
template<typename TCellInterface >
TriangleCell< TCellInterface >::PointIdIterator itk::TriangleCell< TCellInterface >::PointIdsBegin ( void  )
virtual

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

Definition at line 198 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointIdConstIterator itk::TriangleCell< TCellInterface >::PointIdsBegin ( void  ) const
virtual

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

Definition at line 212 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointIdIterator itk::TriangleCell< TCellInterface >::PointIdsEnd ( void  )
virtual

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

Definition at line 225 of file itkTriangleCell.txx.

template<typename TCellInterface >
TriangleCell< TCellInterface >::PointIdConstIterator itk::TriangleCell< TCellInterface >::PointIdsEnd ( void  ) const
virtual

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

Definition at line 239 of file itkTriangleCell.txx.

template<typename TCellInterface >
void itk::TriangleCell< TCellInterface >::SetPointId ( int  localId,
PointIdentifier  ptId 
)
virtual

Standard CellInterface: Set an individual point identifier in the cell.

Definition at line 185 of file itkTriangleCell.txx.

Referenced by itk::VTKPolyDataReader< TOutputMesh >::GenerateData(), and itk::TetrahedronCell< TCellInterface >::GetFace().

template<typename TCellInterface >
void itk::TriangleCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first)
virtual

Standard CellInterface: 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.

Definition at line 146 of file itkTriangleCell.txx.

Referenced by itk::BalloonForceFilter< TInputMesh, TOutputMesh >::Reset().

template<typename TCellInterface >
void itk::TriangleCell< TCellInterface >::SetPointIds ( PointIdConstIterator  first,
PointIdConstIterator  last 
)
virtual

Standard CellInterface: 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.

Definition at line 166 of file itkTriangleCell.txx.


Member Data Documentation

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

Definition at line 68 of file itkTriangleCell.h.

const int itk::TriangleCellTopology::m_Edges = { {0,1}, {1,2}, {2,0} }
staticprotectedinherited

Triangle topology data.

The triangle's topology data: Edges

Definition at line 43 of file itkTriangleCellTopology.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 121 of file itkTriangleCell.h.

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

Definition at line 67 of file itkTriangleCell.h.

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

Triangle-specific topology numbers.

Definition at line 65 of file itkTriangleCell.h.

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

Definition at line 66 of file itkTriangleCell.h.


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

Generated at Sun Feb 3 2013 02:44:17 for Orfeo Toolbox with doxygen 1.8.1.1