#include <itkCellInterface.h>
Define an abstract interface for cells. Actual cell types derive from this class.
Template parameters for Cell:
TPixelType = The type stored with an entity (cell, point, or boundary).
TCellTraits = Type information for cell.
Definition at line 110 of file itkCellInterface.h.
typedef SelfAutoPointer itk::CellInterface< TPixelType, TCellTraits >::CellAutoPointer |
Definition at line 146 of file itkCellInterface.h.
typedef ConstSelfAutoPointer itk::CellInterface< TPixelType, TCellTraits >::CellConstAutoPointer |
Definition at line 147 of file itkCellInterface.h.
typedef ConstRawPointer itk::CellInterface< TPixelType, TCellTraits >::CellConstRawPointer |
Definition at line 149 of file itkCellInterface.h.
typedef CellFeatureIdentifier itk::CellInterface< TPixelType, TCellTraits >::CellFeatureCount |
A useful rename.
Definition at line 152 of file itkCellInterface.h.
typedef CellTraits::CellFeatureIdentifier itk::CellInterface< TPixelType, TCellTraits >::CellFeatureIdentifier |
Definition at line 130 of file itkCellInterface.h.
typedef CellTraits::CellIdentifier itk::CellInterface< TPixelType, TCellTraits >::CellIdentifier |
Definition at line 129 of file itkCellInterface.h.
typedef RawPointer itk::CellInterface< TPixelType, TCellTraits >::CellRawPointer |
Definition at line 148 of file itkCellInterface.h.
typedef TCellTraits itk::CellInterface< TPixelType, TCellTraits >::CellTraits |
Save the CellTraits template parameter.
Definition at line 121 of file itkCellInterface.h.
typedef CellInterface itk::CellInterface< TPixelType, TCellTraits >::CellType |
Give this and all derived classes quick access to the base cell type.
Definition at line 145 of file itkCellInterface.h.
typedef CellTraits::CoordRepType itk::CellInterface< TPixelType, TCellTraits >::CoordRepType |
Save type information for this cell.
Definition at line 124 of file itkCellInterface.h.
typedef CellTraits::InterpolationWeightType itk::CellInterface< TPixelType, TCellTraits >::InterpolationWeightType |
Definition at line 125 of file itkCellInterface.h.
typedef Array<CoordRepType> itk::CellInterface< TPixelType, TCellTraits >::ParametricCoordArrayType |
Types needed to contour the cells
Definition at line 161 of file itkCellInterface.h.
typedef TPixelType itk::CellInterface< TPixelType, TCellTraits >::PixelType |
Save the PixelType template parameter.
Definition at line 118 of file itkCellInterface.h.
typedef CellTraits::PointIdConstIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdConstIterator |
Definition at line 128 of file itkCellInterface.h.
typedef CellTraits::PointIdentifier itk::CellInterface< TPixelType, TCellTraits >::PointIdentifier |
Definition at line 126 of file itkCellInterface.h.
typedef CellTraits::PointIdIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdIterator |
Definition at line 127 of file itkCellInterface.h.
typedef CellTraits::PointsContainer itk::CellInterface< TPixelType, TCellTraits >::PointsContainer |
Definition at line 132 of file itkCellInterface.h.
typedef CellTraits::PointType itk::CellInterface< TPixelType, TCellTraits >::PointType |
Definition at line 131 of file itkCellInterface.h.
typedef Array<InterpolationWeightType> itk::CellInterface< TPixelType, TCellTraits >::ShapeFunctionsArrayType |
Definition at line 162 of file itkCellInterface.h.
typedef CellTraits::UsingCellsContainer itk::CellInterface< TPixelType, TCellTraits >::UsingCellsContainer |
Definition at line 133 of file itkCellInterface.h.
typedef UsingCellsContainer::iterator itk::CellInterface< TPixelType, TCellTraits >::UsingCellsContainerIterator |
An iterator through the UsingCellsContainer.
Definition at line 142 of file itkCellInterface.h.
typedef PointType::VectorType itk::CellInterface< TPixelType, TCellTraits >::VectorType |
NOTE: it should normally be defined in the traits.
Definition at line 136 of file itkCellInterface.h.
enum itk::CellInterface::CellGeometry |
Cell Visitor interfaces
VERTEX_CELL | |
LINE_CELL | |
TRIANGLE_CELL | |
QUADRILATERAL_CELL | |
POLYGON_CELL | |
TETRAHEDRON_CELL | |
HEXAHEDRON_CELL | |
QUADRATIC_EDGE_CELL | |
QUADRATIC_TRIANGLE_CELL | |
LAST_ITK_CELL | |
MAX_ITK_CELLS |
Definition at line 155 of file itkCellInterface.h.
itk::CellInterface< TPixelType, TCellTraits >::CellInterface | ( | ) | [inline] |
Definition at line 432 of file itkCellInterface.h.
virtual itk::CellInterface< TPixelType, TCellTraits >::~CellInterface | ( | ) | [inline, virtual] |
Definition at line 433 of file itkCellInterface.h.
virtual void itk::CellInterface< TPixelType, TCellTraits >::Accept | ( | unsigned long | cellId, | |
MultiVisitor * | ||||
) | [pure virtual] |
This must be implemented by all sub-classes of CellInterface
virtual void itk::CellInterface< TPixelType, TCellTraits >::AddUsingCell | ( | CellIdentifier | cellId | ) | [virtual] |
Register the fact that this cell is a part of the boundary of the cell cellId, by adding cellId to the UsingCellsContainer.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::EvaluatePosition | ( | CoordRepType * | , | |
PointsContainer * | , | |||
CoordRepType * | , | |||
CoordRepType | [], | |||
double * | , | |||
InterpolationWeightType * | ||||
) | [inline, virtual] |
Given the geometric coordinates of a point (coord[PointDimension]), return whether it is inside the cell. Also perform the following calculations, if the corresponding result pointers are not NULL:
Definition at line 321 of file itkCellInterface.h.
virtual void itk::CellInterface< TPixelType, TCellTraits >::EvaluateShapeFunctions | ( | const ParametricCoordArrayType & | , | |
ShapeFunctionsArrayType & | ||||
) | const [inline, virtual] |
Given the parametric coordinates of a point in the cell determine the value of its Shape Functions returned through an itkArray<InterpolationWeightType>).
Definition at line 332 of file itkCellInterface.h.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::GetBoundaryFeature | ( | int | dimension, | |
CellFeatureIdentifier | , | |||
CellAutoPointer & | ||||
) | [pure virtual] |
Get the boundary feature corresponding to the given dimension and Id.
CoordRepType* itk::CellInterface< TPixelType, TCellTraits >::GetBoundingBox | ( | CoordRepType | [PointDimension *2] | ) | [inline] |
Compute cell bounding box and store in the user-provided array. Array is ordered (xmin, xmax, ymin, ymax, ....). A pointer to the array is returned for convenience. This allows code like: "CoordRep* bounds = cell->GetBoundingBox(new CoordRep[6]);".
Definition at line 362 of file itkCellInterface.h.
CoordRepType itk::CellInterface< TPixelType, TCellTraits >::GetBoundingBoxDiagonalLength2 | ( | void | ) | [inline] |
Compute the square of the diagonal length of the bounding box.
Definition at line 366 of file itkCellInterface.h.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::GetClosestBoundary | ( | CoordRepType | [], | |
bool * | , | |||
CellAutoPointer & | ||||
) | [inline, virtual] |
Given the parametric coordinates of a point in the cell (pCoords[CellDimension]), get the closest cell boundary feature of topological dimension CellDimension-1. If the "inside" pointer is not NULL, the flag is set to indicate whether the point is inside the cell.
Definition at line 302 of file itkCellInterface.h.
virtual unsigned int itk::CellInterface< TPixelType, TCellTraits >::GetDimension | ( | void | ) | const [pure virtual] |
Get the topological dimension of this cell.
virtual unsigned int itk::CellInterface< TPixelType, TCellTraits >::GetInterpolationOrder | ( | void | ) | const [virtual] |
Get the interpolation order of the cell. Usually linear.
virtual const char* itk::CellInterface< TPixelType, TCellTraits >::GetNameOfClass | ( | ) | const [virtual] |
Standard part of every itk Object.
virtual CellFeatureCount itk::CellInterface< TPixelType, TCellTraits >::GetNumberOfBoundaryFeatures | ( | int | dimension | ) | const [pure virtual] |
Get the number of boundary features of a given dimension on this cell.
virtual unsigned int itk::CellInterface< TPixelType, TCellTraits >::GetNumberOfPoints | ( | void | ) | const [pure virtual] |
Get the number of points required to define the cell.
virtual unsigned int itk::CellInterface< TPixelType, TCellTraits >::GetNumberOfUsingCells | ( | void | ) | [virtual] |
Get the number of cells in the UsingCellsContainer.
virtual PointIdConstIterator itk::CellInterface< TPixelType, TCellTraits >::GetPointIds | ( | void | ) | const [virtual] |
Get the point id list used by the cell in a form suitable to pass to SetPointIds(first) on another cell. This is equivalent to PointIdsBegin() const.
virtual CellGeometry itk::CellInterface< TPixelType, TCellTraits >::GetType | ( | void | ) | const [pure virtual] |
Return the type of the cell (one of the CellGeometry enums listed above).
virtual bool itk::CellInterface< TPixelType, TCellTraits >::IntersectBoundingBoxWithLine | ( | CoordRepType | [PointDimension *2], | |
CoordRepType | [PointDimension], | |||
CoordRepType | [PointDimension], | |||
CoordRepType | [PointDimension], | |||
CoordRepType * | ||||
) | [inline, virtual] |
Intersect the given bounding box (bounds[PointDimension*2]) with a line given by an origin (origin[PointDimension]) and direction (direction[PointDimension]). Get the following results if the corresponding pointers are not NULL:
Returns whether an intersection exists.
Definition at line 380 of file itkCellInterface.h.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::IntersectWithLine | ( | CoordRepType | [PointDimension], | |
CoordRepType | [PointDimension], | |||
CoordRepType | , | |||
CoordRepType | [PointDimension], | |||
CoordRepType * | , | |||
CoordRepType | [] | |||
) | [inline, virtual] |
Intersect the cell with a line given by an origin (origin[PointDimension]) and direction (direction[PointDimension]). The intersection point found will be within the given tolerance of the real intersection. Get the following results if the corresponding pointers are not NULL:
Returns whether an intersection exists within the given tolerance.
Definition at line 351 of file itkCellInterface.h.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::IsExplicitBoundary | ( | void | ) | [virtual] |
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. Returns true if the cell has been explicitly assigned as a boundary, false otherwise.
virtual bool itk::CellInterface< TPixelType, TCellTraits >::IsUsingCell | ( | CellIdentifier | cellId | ) | [virtual] |
Test if a cell is in the UsingCellsContainer. A result of true
indicates that this cell is part of the boundary of the cell cellId, assuming that boundary information has been recorded.
itk::CellInterface< TPixelType, TCellTraits >::itkCellCommonTypedefs | ( | CellInterface< TPixelType, TCellTraits > | ) |
Standard class typedefs.
virtual void itk::CellInterface< TPixelType, TCellTraits >::MakeCopy | ( | CellAutoPointer & | ) | const [pure virtual] |
Create a new copy of this cell. This is provided so that a copy can be made without knowing the cell type.
virtual PointIdIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdsBegin | ( | void | ) | [pure virtual] |
Get a begin iterator to the list of point identifiers used by the cell.
virtual PointIdConstIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdsBegin | ( | void | ) | const [pure virtual] |
Get a const begin iterator to the list of point identifiers used by the cell.
virtual PointIdConstIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdsEnd | ( | void | ) | const [pure virtual] |
Get a const end iterator to the list of point identifiers used by the cell.
virtual PointIdIterator itk::CellInterface< TPixelType, TCellTraits >::PointIdsEnd | ( | void | ) | [pure virtual] |
Get an end iterator to the list of point identifiers used by the cell.
virtual void itk::CellInterface< TPixelType, TCellTraits >::RemoveUsingCell | ( | CellIdentifier | cellId | ) | [virtual] |
Remove a cell from the UsingCellsContainer.
virtual void itk::CellInterface< TPixelType, TCellTraits >::SetPointId | ( | int | localId, | |
PointIdentifier | ||||
) | [pure virtual] |
Set the point identifier for a given spot in the point list for the cell.
virtual void itk::CellInterface< TPixelType, TCellTraits >::SetPointIds | ( | PointIdConstIterator | first | ) | [pure virtual] |
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.
virtual void itk::CellInterface< TPixelType, TCellTraits >::SetPointIds | ( | PointIdConstIterator | first, | |
PointIdConstIterator | last | |||
) | [pure virtual] |
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.
virtual UsingCellsContainerIterator itk::CellInterface< TPixelType, TCellTraits >::UsingCellsBegin | ( | void | ) | [virtual] |
Get a begin iterator for the UsingCellsContainer.
virtual UsingCellsContainerIterator itk::CellInterface< TPixelType, TCellTraits >::UsingCellsEnd | ( | void | ) | [virtual] |
Get an end iterator for the UsingCellsContainer.
UsingCellsContainer itk::CellInterface< TPixelType, TCellTraits >::m_UsingCells [protected] |
Cell internal utility routines. Get the geometric position of a point. Store the set of cells using this boundary.
Definition at line 441 of file itkCellInterface.h.
const unsigned int itk::CellInterface< TPixelType, TCellTraits >::PointDimension = CellTraits::PointDimension [static] |
Save the dimension from the template parameters.
Definition at line 139 of file itkCellInterface.h.