Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep > Class Template Reference
[Image Functions]

Projective interpolation of an image at specified positions. More...

#include <itkRayCastInterpolateImageFunction.h>

Inheritance diagram for itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >:

Inheritance graph
[legend]
Collaboration diagram for itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef RayCastInterpolateImageFunction Self
typedef InterpolateImageFunction<
TInputImage, TCoordRep > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Transform< TCoordRep, 3, 3 > TransformType
typedef TransformType::Pointer TransformPointer
typedef TransformType::InputPointType InputPointType
typedef TransformType::OutputPointType OutputPointType
typedef TransformType::ParametersType TransformParametersType
typedef TransformType::JacobianType TransformJacobianType
typedef Superclass::InputPixelType PixelType
typedef TInputImage::SizeType SizeType
typedef itk::Vector< double, 3 > DirectionType
typedef InterpolateImageFunction<
TInputImage, TCoordRep > 
InterpolatorType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef Superclass::OutputType OutputType
typedef Superclass::InputImageType InputImageType
typedef Superclass::RealType RealType
typedef Superclass::PointType PointType
typedef Superclass::IndexType IndexType
typedef Superclass::ContinuousIndexType ContinuousIndexType

Public Member Functions

 itkStaticConstMacro (InputImageDimension, unsigned int, TInputImage::ImageDimension)
virtual const char * GetClassName () const
 itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension)
virtual OutputType Evaluate (const PointType &point) const
virtual OutputType EvaluateAtContinuousIndex (const ContinuousIndexType &index) const
virtual void SetTransform (TransformType *_arg)
virtual TransformTypeGetTransform ()
virtual void SetInterpolator (InterpolatorType *_arg)
virtual InterpolatorTypeGetInterpolator ()
virtual void SetFocalPoint (InputPointType _arg)
virtual InputPointType GetFocalPoint ()
virtual void SetThreshold (double _arg)
virtual double GetThreshold ()
bool IsInsideBuffer (const PointType &point) const
bool SetRay (OutputPointType RayPosn, DirectionType RayDirn) const
bool Integrate (double &integral) const
bool IntegrateAboveThreshold (double &integral, double threshold) const
void IncrementIntensities (double increment=1) const
bool NextPoint (void) const
void Reset (void) const
void GetCurrentCoord3D (double &x, double &y, double &z) const
void GetCurrentVoxelCoord3D (double &x, double &y, double &z) const
double GetCurrentIntensity (void) const
double GetCurrentDensity (double threshold=0.) const
void GetCurrentVoxels (PixelType &voxel1, PixelType &voxel2, PixelType &voxel3, PixelType &voxel4) const
int GetNumberOfVoxels (void) const
double GetRayPointSpacing (void) const
void SetBoundingBox (double position[3], double size[3]) const

Static Public Member Functions

Pointer New ()

Protected Types

enum  TraversalDirection {
  UNDEFINED_DIRECTION = 0, TRANSVERSE_IN_X, TRANSVERSE_IN_Y, TRANSVERSE_IN_Z,
  LAST_DIRECTION
}

Protected Member Functions

 RayCastInterpolateImageFunction ()
 ~RayCastInterpolateImageFunction ()
void PrintSelf (std::ostream &os, Indent indent) const
void EndPointsInVoxels (void) const
void CalcDirnVector (void) const
bool AdjustRayLength (void) const
void InitialiseVoxelPointers (void) const
void IncrementVoxelPointers (void) const
void Initialise (void) const
void RecordVolumeDimensions (void) const
void DefineCorners (void) const
void CalcPlanesAndCorners (void) const
bool CalcRayIntercepts (void) const

Protected Attributes

TransformPointer m_Transform
InputPointType m_FocalPoint
double m_Threshold
bool m_ValidRay
double m_RayVoxelStartPosition [3]
double m_RayVoxelEndPosition [3]
double m_Position3Dvox [3]
double m_VoxelIncrement [3]
TraversalDirection m_TraversalDirection
int m_TotalRayVoxelPlanes
int m_NumVoxelPlanesTraversed
const PixelTypem_RayIntersectionVoxels [4]
int m_RayIntersectionVoxelIndex [3]
int m_NumberOfVoxelsInX
int m_NumberOfVoxelsInY
int m_NumberOfVoxelsInZ
double m_VoxelDimensionInX
double m_VoxelDimensionInY
double m_VoxelDimensionInZ
double m_RayStartCoordInMM [3]
double m_RayEndCoordInMM [3]
double m_BoundingPlane [6][4]
double m_BoundingCorner [8][3]
double m_CurrentRayPositionInMM [3]
double m_RayDirectionInMM [3]
InterpolatorPointer m_Interpolator

Detailed Description

template<class TInputImage, class TCoordRep = float>
class itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >

Projective interpolation of an image at specified positions.

RayCastInterpolateImageFunction casts rays through a 3-dimensional image and uses bilinear interpolation to integrate each plane of voxels traversed.

Warning:
This interpolator works for 3-dimensional images only.

Definition at line 39 of file itkRayCastInterpolateImageFunction.h.


Member Typedef Documentation

template<class TInputImage, class TCoordRep = float>
typedef SmartPointer<const Self> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::ConstPointer
 

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 47 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef Superclass::ContinuousIndexType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::ContinuousIndexType
 

ContinuousIndex typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 102 of file itkRayCastInterpolateImageFunction.h.

Referenced by itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::EvaluateAtContinuousIndex().

template<class TInputImage, class TCoordRep = float>
typedef itk::Vector<double, 3> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::DirectionType
 

Definition at line 69 of file itkRayCastInterpolateImageFunction.h.

Referenced by itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IsInsideBuffer().

template<class TInputImage, class TCoordRep = float>
typedef Superclass::IndexType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IndexType
 

Index typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 99 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef Superclass::InputImageType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::InputImageType
 

InputImageType typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 87 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TransformType::InputPointType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::InputPointType
 

Definition at line 60 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef InterpolatorType::Pointer itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::InterpolatorPointer
 

Definition at line 74 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef InterpolateImageFunction<TInputImage,TCoordRep> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::InterpolatorType
 

Type of the Interpolator Base class Definition at line 72 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TransformType::OutputPointType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::OutputPointType
 

Definition at line 61 of file itkRayCastInterpolateImageFunction.h.

Referenced by itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IsInsideBuffer().

template<class TInputImage, class TCoordRep = float>
typedef Superclass::OutputType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::OutputType
 

OutputType typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 84 of file itkRayCastInterpolateImageFunction.h.

Referenced by itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::EvaluateAtContinuousIndex().

template<class TInputImage, class TCoordRep = float>
typedef Superclass::InputPixelType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::PixelType
 

Definition at line 65 of file itkRayCastInterpolateImageFunction.h.

Referenced by itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Integrate().

template<class TInputImage, class TCoordRep = float>
typedef SmartPointer<Self> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Pointer
 

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 46 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef Superclass::PointType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::PointType
 

Point typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 96 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef Superclass::RealType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::RealType
 

RealType typedef support.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 90 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef RayCastInterpolateImageFunction itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Self
 

Standard class typedefs.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 44 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TInputImage::SizeType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SizeType
 

Definition at line 67 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef InterpolateImageFunction<TInputImage,TCoordRep> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Superclass
 

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 45 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TransformType::JacobianType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::TransformJacobianType
 

Definition at line 63 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TransformType::ParametersType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::TransformParametersType
 

Definition at line 62 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef TransformType::Pointer itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::TransformPointer
 

Definition at line 59 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
typedef Transform<TCoordRep,3,3> itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::TransformType
 

Type of the Transform Base class The fixed image should be a 3D image Definition at line 57 of file itkRayCastInterpolateImageFunction.h.


Member Enumeration Documentation

template<class TInputImage, class TCoordRep = float>
enum itk::RayCastInterpolateImageFunction::TraversalDirection [protected]
 

The ray is traversed by stepping in the axial direction that enables the greatest number of planes in the volume to be intercepted.

Enumeration values:
UNDEFINED_DIRECTION  Undefined.
TRANSVERSE_IN_X  x
TRANSVERSE_IN_Y  y
TRANSVERSE_IN_Z  z
LAST_DIRECTION 
Definition at line 317 of file itkRayCastInterpolateImageFunction.h.


Constructor & Destructor Documentation

template<class TInputImage, class TCoordRep = float>
itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::RayCastInterpolateImageFunction  )  [protected]
 

Constructor.

template<class TInputImage, class TCoordRep = float>
itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::~RayCastInterpolateImageFunction  )  [inline, protected]
 

Destructor.

Definition at line 306 of file itkRayCastInterpolateImageFunction.h.


Member Function Documentation

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::AdjustRayLength void   )  const [protected]
 

Reduce the length of the ray until both start and end coordinates lie inside the volume.

Returns:
True if a valid ray has been, false otherwise.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::CalcDirnVector void   )  const [protected]
 

Calculate the incremental direction vector in voxels, 'dVoxel', required to traverse the ray.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::CalcPlanesAndCorners void   )  const [protected]
 

Calculate the planes which define the volume.

Member function to calculate the equations of the planes of 4 of the sides of the volume, calculate the positions of the 8 corners of the volume in mm in World, also calculate the values of the slopes of the lines which go to make up the volume( defined as lines in cube x,y,z dirn and then each of these lines has a slope in the world x,y,z dirn [3]) and finally also to return the length of the sides of the lines in mm.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::CalcRayIntercepts void   )  const [protected]
 

Calculate the ray intercepts with the volume.

See where the ray cuts the volume, check that truncation does not occur, if not, then start ray where it first intercepts the volume and set x_max to be where it leaves the volume.

Returns:
True if a valid ray has been specified, false otherwise.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::DefineCorners void   )  const [protected]
 

Define the corners of the volume.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::EndPointsInVoxels void   )  const [protected]
 

Calculate the endpoint coordinats of the ray in voxels.

template<class TInputImage, class TCoordRep = float>
virtual OutputType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Evaluate const PointType point  )  const [virtual]
 

Interpolate the image at a point position.

Returns the interpolated image intensity at a specified point position. No bounds checking is done. The point is assume to lie within the image buffer.

ImageFunction::IsInsideBuffer() can be used to check bounds before calling the method.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

template<class TInputImage, class TCoordRep = float>
virtual OutputType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::EvaluateAtContinuousIndex const ContinuousIndexType index  )  const [inline, virtual]
 

Interpolate the image at a continuous index position

Returns the interpolated image intensity at a specified index position. No bounds checking is done. The point is assume to lie within the image buffer.

Subclasses must override this method.

ImageFunction::IsInsideBuffer() can be used to check bounds before calling the method.

Implements itk::InterpolateImageFunction< TInputImage, TCoordRep >.

Definition at line 129 of file itkRayCastInterpolateImageFunction.h.

References itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::ContinuousIndexType, and itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::OutputType.

template<class TInputImage, class TCoordRep = float>
virtual const char* itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetCurrentCoord3D double &  x,
double &  y,
double &  z
const
 

Get the current ray position in mm.

The origin for this coordinate is the corner of the (0,0,0) voxel.

Parameters:
x The x component of the current ray coordinate
y The y component of the current ray coordinate
z The z component of the current ray coordinate

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetCurrentDensity double  threshold = 0.  )  const
 

Return the density of intensity for the current ray point.

This function determines which of the 4 planar voxels surrounding the current ray point are above the threshold value and interpolates these zero or unity values. The returned value therefore also lies between zero and one and estimates the extent to which the current ray point is "filled" with intensity.

Parameters:
threshold Voxels are considered "set" if above this threshold
Returns:
The extent to which the current ray point is "filled" with intensity.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetCurrentIntensity void   )  const
 

Return the interpolated intensity of the current ray point.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetCurrentVoxelCoord3D double &  x,
double &  y,
double &  z
const
 

Get the current ray position in voxels.

Parameters:
x The x component of the current ray coordinate
y The y component of the current ray coordinate
z The z component of the current ray coordinate

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetCurrentVoxels PixelType voxel1,
PixelType voxel2,
PixelType voxel3,
PixelType voxel4
const
 

Return a pointer to the four voxels surrounding the current ray position.

template<class TInputImage, class TCoordRep = float>
virtual InputPointType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetFocalPoint  )  [virtual]
 

Get a pointer to the Interpolator.

template<class TInputImage, class TCoordRep = float>
virtual InterpolatorType* itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetInterpolator  )  [virtual]
 

Get a pointer to the Interpolator.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetNumberOfVoxels void   )  const [inline]
 

Return the number of voxels on the current ray.

Definition at line 277 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetRayPointSpacing void   )  const [inline]
 

Return the ray point spacing in mm.

Definition at line 280 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
virtual double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetThreshold  )  [virtual]
 

Get a pointer to the Transform.

template<class TInputImage, class TCoordRep = float>
virtual TransformType* itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::GetTransform  )  [virtual]
 

Get a pointer to the Transform.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IncrementIntensities double  increment = 1  )  const
 

Increment each of the intensities of the 4 planar voxels surrounding the current ray point.

increment Intensity increment for each of the current 4 voxels

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IncrementVoxelPointers void   )  const [protected]
 

Increment the voxel pointers surrounding the current point on the ray.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Initialise void   )  const [protected]
 

Initialise the object.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::InitialiseVoxelPointers void   )  const [protected]
 

Obtain pointers to the four voxels surrounding the point where the ray enters the volume.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Integrate double &  integral  )  const [inline]
 

Integrate the interpolated intensities along the ray and return the result.

This routine can be called after instantiating the ray and calling SetProjectionCoord2D() or Reset(). It may then be called as many times thereafter for different 2D projection coordinates.

Parameters:
integral The integrated intensities along the ray.
Returns:
True if a valid ray was specified.
Definition at line 189 of file itkRayCastInterpolateImageFunction.h.

References itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::PixelType.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IntegrateAboveThreshold double &  integral,
double  threshold
const
 

Integrate the interpolated intensities above a given threshold, along the ray and return the result.

This routine can be called after instantiating the ray and calling SetProjectionCoord2D() or Reset(). It may then be called as many times thereafter for different 2D projection coordinates.

Parameters:
integral The integrated intensities along the ray.
threshold The integration threshold [default value: 0]
Returns:
True if a valid ray was specified.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::IsInsideBuffer const PointType point  )  const [inline]
 

Check if a point is inside the image buffer.

Warning:
For efficiency, no validity checking of the input image pointer is done.
Definition at line 160 of file itkRayCastInterpolateImageFunction.h.

References itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::DirectionType, and itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::OutputPointType.

template<class TInputImage, class TCoordRep = float>
itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
Superclass::ImageDimension 
 

Dimension underlying input image.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

template<class TInputImage, class TCoordRep = float>
itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::itkStaticConstMacro InputImageDimension  ,
unsigned  int,
TInputImage::ImageDimension 
 

Constants for the image dimensions

template<class TInputImage, class TCoordRep = float>
Pointer itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::New  )  [static]
 

Method for creation through the object factory.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::NextPoint void   )  const
 

Step along the ray.

This routine can be called after iteratively to step along a given ray. To specify a new ray call: 'SetProjectionCoord2D()' first. To re-traverse the current ray call: 'Reset()'.

Returns:
False if there are no more points on the ray.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::PrintSelf std::ostream &  os,
Indent  indent
const [protected]
 

Print the object.

Reimplemented from itk::InterpolateImageFunction< TInputImage, TCoordRep >.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::RecordVolumeDimensions void   )  const [protected]
 

Record volume dimensions and resolution.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::Reset void   )  const
 

Reset the iterator to the start of the ray.

template<class TInputImage, class TCoordRep = float>
void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetBoundingBox double  position[3],
double  size[3]
const
 

Define the corners of the volume according a specified bounding box.

Parameters:
position The position of the bounding box in mm.
size The size of the bounding box in mm.

template<class TInputImage, class TCoordRep = float>
virtual void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetFocalPoint InputPointType  _arg  )  [virtual]
 

Connect the Interpolator.

template<class TInputImage, class TCoordRep = float>
virtual void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetInterpolator InterpolatorType _arg  )  [virtual]
 

Connect the Interpolator.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetRay OutputPointType  RayPosn,
DirectionType  RayDirn
const
 

Initialise the ray using the position and direction of a line.

Parameters:
RayPosn The position of the ray in 3D (mm).
RayDirn The direction of the ray in 3D (mm).
Returns:
True if this is a valid ray.

template<class TInputImage, class TCoordRep = float>
virtual void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetThreshold double  _arg  )  [virtual]
 

Connect the Transform.

template<class TInputImage, class TCoordRep = float>
virtual void itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::SetTransform TransformType _arg  )  [virtual]
 

Connect the Transform.


Member Data Documentation

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_BoundingCorner[8][3] [mutable, protected]
 

The eight corners of the volume (x,y,z coordinates for each).

Definition at line 416 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_BoundingPlane[6][4] [mutable, protected]
 

Planes which define the boundary of the volume in mm (six planes and four parameters: Ax+By+Cz+D).

Definition at line 414 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_CurrentRayPositionInMM[3] [mutable, protected]
 

The position of the ray.

Definition at line 419 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
InputPointType itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_FocalPoint [protected]
 

The focal point or position of the ray source.

Definition at line 330 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
InterpolatorPointer itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_Interpolator [protected]
 

Pointer to the interpolator.

Definition at line 425 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_NumberOfVoxelsInX [mutable, protected]
 

The dimension in voxels of the 3D volume in along the x axis.

Definition at line 392 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_NumberOfVoxelsInY [mutable, protected]
 

The dimension in voxels of the 3D volume in along the y axis.

Definition at line 394 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_NumberOfVoxelsInZ [mutable, protected]
 

The dimension in voxels of the 3D volume in along the z axis.

Definition at line 396 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_NumVoxelPlanesTraversed [mutable, protected]
 

The current number of planes of voxels traversed by the ray.

Definition at line 379 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_Position3Dvox[3] [mutable, protected]
 

The current coordinate on the ray in voxels.

NB. Two of the components of this coordinate (i.e. those lying within the planes of voxels being traversed) will be shifted by half a voxel. This enables indices of the neighbouring voxels within the plane to be determined by simply casting to 'int' and optionally adding 1. Definition at line 367 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayDirectionInMM[3] [mutable, protected]
 

The direction of the ray.

Definition at line 422 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayEndCoordInMM[3] [mutable, protected]
 

The coordinate of the point at which the ray exits the volume in mm.

Definition at line 408 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayIntersectionVoxelIndex[3] [mutable, protected]
 

The voxel coordinate of the bottom-left voxel of the current four voxels surrounding the ray's trajectory. Definition at line 388 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
const PixelType* itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayIntersectionVoxels[4] [mutable, protected]
 

Pointers to the current four voxels surrounding the ray's trajectory.

Definition at line 382 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayStartCoordInMM[3] [mutable, protected]
 

The coordinate of the point at which the ray enters the volume in mm.

Definition at line 406 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayVoxelEndPosition[3] [mutable, protected]
 

The end coordinate of the ray in voxels.

NB. Two of the components of this coordinate (i.e. those lying within the planes of voxels being traversed) will be shifted by half a voxel. This enables indices of the neighbouring voxels within the plane to be determined by simply casting to 'int' and optionally adding 1. Definition at line 356 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_RayVoxelStartPosition[3] [mutable, protected]
 

The start position of the ray in voxels.

NB. Two of the components of this coordinate (i.e. those lying within the planes of voxels being traversed) will be shifted by half a voxel. This enables indices of the neighbouring voxels within the plane to be determined by simply casting to 'int' and optionally adding 1. Definition at line 346 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_Threshold [protected]
 

The threshold above which voxels along the ray path are integrated.

Definition at line 333 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
int itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_TotalRayVoxelPlanes [mutable, protected]
 

The total number of planes of voxels traversed by the ray.

Definition at line 376 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
TransformPointer itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_Transform [protected]
 

Transformation used to calculate the new focal point position.

Definition at line 327 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
TraversalDirection itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_TraversalDirection [mutable, protected]
 

The direction in which the ray is incremented thorough the volume (x, y or z).

Definition at line 373 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
bool itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_ValidRay [mutable, protected]
 

Flag indicating whether the current ray is valid.

Definition at line 336 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_VoxelDimensionInX [mutable, protected]
 

Voxel dimension in x.

Definition at line 399 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_VoxelDimensionInY [mutable, protected]
 

Voxel dimension in y.

Definition at line 401 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_VoxelDimensionInZ [mutable, protected]
 

Voxel dimension in z.

Definition at line 403 of file itkRayCastInterpolateImageFunction.h.

template<class TInputImage, class TCoordRep = float>
double itk::RayCastInterpolateImageFunction< TInputImage, TCoordRep >::m_VoxelIncrement[3] [mutable, protected]
 

The incremental direction vector of the ray in voxels. Definition at line 370 of file itkRayCastInterpolateImageFunction.h.


The documentation for this class was generated from the following file:
Generated at Sat Mar 31 02:39:39 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000