#include <itkCellInterface.h>
Public Types | |
typedef TPixelType | PixelType |
typedef TCellTraits | CellTraits |
typedef CellTraits::CoordRepType | CoordRepType |
typedef CellTraits::InterpolationWeightType | InterpolationWeightType |
typedef CellTraits::PointIdentifier | PointIdentifier |
typedef CellTraits::PointIdIterator | PointIdIterator |
typedef CellTraits::PointIdConstIterator | PointIdConstIterator |
typedef CellTraits::CellIdentifier | CellIdentifier |
typedef CellTraits::CellFeatureIdentifier | CellFeatureIdentifier |
typedef CellTraits::PointType | PointType |
typedef CellTraits::PointsContainer | PointsContainer |
typedef CellTraits::UsingCellsContainer | UsingCellsContainer |
typedef UsingCellsContainer::iterator | UsingCellsContainerIterator |
typedef CellInterface | CellType |
typedef SelfAutoPointer | CellAutoPointer |
typedef ConstSelfAutoPointer | CellConstAutoPointer |
typedef RawPointer | CellRawPointer |
typedef ConstRawPointer | CellConstRawPointer |
typedef CellFeatureIdentifier | CellFeatureCount |
typedef Array< CoordRepType > | ParametricCoordArrayType |
typedef Array< InterpolationWeightType > | ShapeFunctionsArrayType |
enum | CellGeometry { VERTEX_CELL = 0, LINE_CELL, TRIANGLE_CELL, QUADRILATERAL_CELL, POLYGON_CELL, TETRAHEDRON_CELL, HEXAHEDRON_CELL, QUADRATIC_EDGE_CELL, QUADRATIC_TRIANGLE_CELL, LAST_ITK_CELL, MAX_ITK_CELLS = 255 } |
Public Methods | |
itkCellCommonTypedefs (CellInterface) | |
itkStaticConstMacro (PointDimension, unsigned int, CellTraits::PointDimension) | |
virtual void | Accept (unsigned long cellId, MultiVisitor *)=0 |
virtual CellGeometry | GetType (void) const=0 |
virtual void | MakeCopy (CellAutoPointer &) const=0 |
virtual unsigned int | GetDimension (void) const=0 |
virtual unsigned int | GetInterpolationOrder (void) const |
virtual unsigned int | GetNumberOfPoints (void) const=0 |
virtual CellFeatureCount | GetNumberOfBoundaryFeatures (int dimension) const=0 |
virtual bool | GetBoundaryFeature (int dimension, CellFeatureIdentifier, CellAutoPointer &)=0 |
virtual PointIdConstIterator | GetPointIds (void) const |
virtual void | SetPointIds (PointIdConstIterator first)=0 |
virtual void | SetPointIds (PointIdConstIterator first, PointIdConstIterator last)=0 |
virtual void | SetPointId (int localId, PointIdentifier)=0 |
virtual PointIdIterator | PointIdsBegin (void)=0 |
virtual PointIdConstIterator | PointIdsBegin (void) const=0 |
virtual PointIdIterator | PointIdsEnd (void)=0 |
virtual PointIdConstIterator | PointIdsEnd (void) const=0 |
virtual bool | GetClosestBoundary (CoordRepType pCoords[], bool *inside, CellAutoPointer &) |
virtual bool | EvaluatePosition (CoordRepType coords[PointDimension], CoordRepType closestPoint[PointDimension], CoordRepType pCoords[], CoordRepType *dist2, InterpolationWeightType weights[]) |
virtual void | EvaluateShapeFunctions (const ParametricCoordArrayType ¶metricCoordinates, ShapeFunctionsArrayType &weights) const |
virtual bool | IntersectWithLine (CoordRepType origin[PointDimension], CoordRepType direction[PointDimension], CoordRepType tolerance, CoordRepType coords[PointDimension], CoordRepType *t, CoordRepType pCoords[]) |
CoordRepType | GetBoundingBoxDiagonalLength2 (void) |
virtual bool | IntersectBoundingBoxWithLine (CoordRepType bounds[PointDimension *2], CoordRepType origin[PointDimension], CoordRepType direction[PointDimension], CoordRepType coords[PointDimension], CoordRepType *t) |
virtual const char * | GetClassName () const |
CellInterface () | |
virtual | ~CellInterface () |
CoordRepType * | GetBoundingBox (CoordRepType bounds[PointDimension *2]) |
virtual bool | IsBoundary (void) |
virtual void | AddUsingCell (CellIdentifier) |
virtual void | RemoveUsingCell (CellIdentifier) |
virtual bool | IsUsingCell (CellIdentifier) |
virtual unsigned int | GetNumberOfUsingCells (void) |
virtual UsingCellsContainerIterator | UsingCellsBegin (void) |
virtual UsingCellsContainerIterator | UsingCellsEnd (void) |
Static Public Methods | |
int | GetNextUserCellId () |
Extra information in cells that are actually boundaries between other cells is provided in the CellBoundary wrapper.
Template parameters for Cell:
TPixelType = The type stored with an entity (cell, point, or boundary).
TCellTraits = Type information for cell.
Definition at line 115 of file itkCellInterface.h.
|
Definition at line 148 of file itkCellInterface.h. |
|
Definition at line 149 of file itkCellInterface.h. |
|
Definition at line 151 of file itkCellInterface.h. |
|
A useful rename. Definition at line 154 of file itkCellInterface.h. |
|
Definition at line 135 of file itkCellInterface.h. |
|
Definition at line 134 of file itkCellInterface.h. |
|
Definition at line 150 of file itkCellInterface.h. |
|
Save the CellTraits template parameter. Definition at line 126 of file itkCellInterface.h. |
|
Give this and all derived classes quick access to the base cell type. Definition at line 147 of file itkCellInterface.h. |
|
Save type information for this cell. Definition at line 129 of file itkCellInterface.h. Referenced by itk::CellInterface< TPixelType, TCellTraits >::EvaluatePosition(), itk::CellInterface< TPixelType, TCellTraits >::GetBoundingBox(), itk::CellInterface< TPixelType, TCellTraits >::IntersectBoundingBoxWithLine(), and itk::CellInterface< TPixelType, TCellTraits >::IntersectWithLine(). |
|
Definition at line 130 of file itkCellInterface.h. Referenced by itk::CellInterface< TPixelType, TCellTraits >::EvaluatePosition(). |
|
Types needed to contour the cells Definition at line 163 of file itkCellInterface.h. |
|
Save the PixelType template parameter. Definition at line 123 of file itkCellInterface.h. |
|
Definition at line 133 of file itkCellInterface.h. |
|
Definition at line 131 of file itkCellInterface.h. |
|
Definition at line 132 of file itkCellInterface.h. |
|
Definition at line 137 of file itkCellInterface.h. |
|
Definition at line 136 of file itkCellInterface.h. |
|
Definition at line 164 of file itkCellInterface.h. |
|
Definition at line 138 of file itkCellInterface.h. |
|
An iterator through the UsingCellsContainer. Definition at line 144 of file itkCellInterface.h. |
|
Cell Visitor interfaces
Definition at line 157 of file itkCellInterface.h. |
|
Definition at line 392 of file itkCellInterface.h. |
|
Definition at line 393 of file itkCellInterface.h. |
|
This must be implemented by all sub-classes of CellInterface |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
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 313 of file itkCellInterface.h. References itk::CellInterface< TPixelType, TCellTraits >::CoordRepType, and itk::CellInterface< TPixelType, TCellTraits >::InterpolationWeightType. |
|
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 323 of file itkCellInterface.h. |
|
Get the boundary feature corresponding to the given dimension and Id. |
|
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 353 of file itkCellInterface.h. References itk::CellInterface< TPixelType, TCellTraits >::CoordRepType. |
|
Compute the square of the diagonal length of the bounding box. Definition at line 357 of file itkCellInterface.h. |
|
|
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 294 of file itkCellInterface.h. |
|
Get the topological dimension of this cell. |
|
Get the interpolation order of the cell. Usually linear. |
|
|
|
Get the number of boundary features of a given dimension on this cell. |
|
Get the number of points required to define the cell. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
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. |
|
Return the type of the cell (one of the CellGeometry enums listed above). |
|
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:
Definition at line 371 of file itkCellInterface.h. References itk::CellInterface< TPixelType, TCellTraits >::CoordRepType. |
|
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:
Definition at line 342 of file itkCellInterface.h. References itk::CellInterface< TPixelType, TCellTraits >::CoordRepType. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
Standard class typedefs. |
|
Save the dimension from the template parameters. |
|
Create a new copy of this cell. This is provided so that a copy can be made without knowing the cell type. |
|
Get a const begin iterator to the list of point identifiers used by the cell. |
|
Get a begin iterator to the list of point identifiers used by the cell. |
|
Get a const end iterator to the list of point identifiers used by the cell. |
|
Get an end iterator to the list of point identifiers used by the cell. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
Set the point identifier for a given spot in the point list for the cell. |
|
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. |
|
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. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |
|
Interface to the boundary form of the cell to set/get UsingCells. See the boundary wrapper source for more information. |