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

itk::PhasedArray3DSpecialCoordinatesImage< TPixel > Class Template Reference
[Image Representation Objects]

Templated 3D nonrectilinear-coordinate image class for phased-array "range" images. More...

#include <itkPhasedArray3DSpecialCoordinatesImage.h>

Inheritance diagram for itk::PhasedArray3DSpecialCoordinatesImage< TPixel >:

Inheritance graph
[legend]
Collaboration diagram for itk::PhasedArray3DSpecialCoordinatesImage< TPixel >:

Collaboration graph
[legend]
List of all members.

[NOHEADER]

template<class TCoordRep> void TransformIndexToPhysicalPoint (const IndexType &index, Point< TCoordRep, 3 > &point) const
virtual void SetAzimuthAngularSeparation (double _arg)
virtual void SetElevationAngularSeparation (double _arg)
virtual void SetRadiusSampleSize (double _arg)
virtual void SetFirstSampleDistance (double _arg)
 PhasedArray3DSpecialCoordinatesImage ()
virtual ~PhasedArray3DSpecialCoordinatesImage ()
void PrintSelf (std::ostream &os, Indent indent) const

Public Types

typedef PhasedArray3DSpecialCoordinatesImage Self
typedef SpecialCoordinatesImage<
TPixel, 3 > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef WeakPointer< const
Self
ConstWeakPointer
typedef TPixel PixelType
typedef TPixel ValueType
typedef TPixel InternalPixelType
typedef DefaultPixelAccessor<
PixelType
AccessorType
typedef DefaultPixelAccessorFunctor<
Self
AccessorFunctorType
typedef ImportImageContainer<
unsigned long, PixelType
PixelContainer
typedef Superclass::IndexType IndexType
typedef Superclass::OffsetType OffsetType
typedef Superclass::SizeType SizeType
typedef Superclass::RegionType RegionType
typedef Superclass::SpacingType SpacingType
typedef Superclass::PointType PointType
typedef PixelContainer::Pointer PixelContainerPointer
typedef PixelContainer::ConstPointer PixelContainerConstPointer

Public Member Functions

virtual const char * GetNameOfClass () const
 itkStaticConstMacro (ImageDimension, unsigned int, 3)
template<class TCoordRep> bool TransformPhysicalPointToContinuousIndex (const Point< TCoordRep, 3 > &point, ContinuousIndex< TCoordRep, 3 > &index) const
template<class TCoordRep> bool TransformPhysicalPointToIndex (const Point< TCoordRep, 3 > &point, IndexType &index) const
template<class TCoordRep> void TransformContinuousIndexToPhysicalPoint (const ContinuousIndex< TCoordRep, 3 > &index, Point< TCoordRep, 3 > &point) const

Static Public Member Functions

Pointer New ()

Detailed Description

template<class TPixel>
class itk::PhasedArray3DSpecialCoordinatesImage< TPixel >

Templated 3D nonrectilinear-coordinate image class for phased-array "range" images.

y-axis <--------------------+ |\ / | \ `~-| \ / | \ ele- | \ / vation | \ projection | v x-axis to y-z plane -> o | v z-axis

In a phased array "range" image, a point in space is represented by the angle between its projection onto the x-z plane and the z-axis (the azimuth coordinate), the angle between its projection onto the y-z plane and the z-axis (the elevation coordinate), and by its distance from the origin (the radius). See the diagram above, which illustrates elevation.

The equations form performing the conversion from Cartesian coordinates to 3D phased array coordinates are as follows:

azimuth = arctan(x/y) elevation = arctan(y/z) radius = sqrt(x^2 + y^2 + z^2)

The reversed transforms are:

z = radius / sqrt( 1 + (tan(azimuth))^2 + (tan(elevation))^2 ); x = z * tan(azimuth) y = z * tan(elevation)

PhasedArray3DSpecialCoordinatesImages are templated over a pixel type and follow the SpecialCoordinatesImage interface. The data in an image is arranged in a 1D array as [radius-index][elevation-index][azimuth-index] with azimuth-index varying most rapidly. The Index type reverses the order so that Index[0] = azimuth-index, Index[1] = elevation-index, and Index[2] = radius-index.

Azimuth is discretized into m_AzimuthAngularSeparation intervals per angular voxel, the most negative azimuth interval containing data is then mapped to azimuth-index=0, and the largest azimuth interval containing data is then mapped to azimuth-index=( number of samples along azimuth axis - 1 ). Elevation is discretized in the same manner. This way, the mapping to Cartesian space is symmetric about the z axis such that the line defined by azimuth/2,elevation/2 = z-axis. Radius is discretized into m_RadiusSampleSize units per angular voxel. The smallest range interval containing data is then mapped to radius-index=0, such that radius = m_FirstSampleDistance + (radius-index * m_RadiusSampleSize).

See also:
SpecialCoordinatesImage

Definition at line 86 of file itkPhasedArray3DSpecialCoordinatesImage.h.


Member Typedef Documentation

template<class TPixel>
typedef DefaultPixelAccessorFunctor< Self > itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::AccessorFunctorType
 

Accessor functor to choose between accessors: DefaultPixelAccessor for the Image, and DefaultVectorPixelAccessor for the vector image. The functor provides a generic API between the two accessors.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 123 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef DefaultPixelAccessor< PixelType > itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::AccessorType
 

Accessor type that convert data between internal and external representations.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 118 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef SmartPointer<const Self> itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::ConstPointer
 

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 94 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef WeakPointer<const Self> itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::ConstWeakPointer
 

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 95 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef Superclass::IndexType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::IndexType
 

Index typedef support. An index is used to access pixel values.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 135 of file itkPhasedArray3DSpecialCoordinatesImage.h.

Referenced by itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformIndexToPhysicalPoint(), and itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToIndex().

template<class TPixel>
typedef TPixel itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::InternalPixelType
 

Internal Pixel representation. Used to maintain a uniform API with Image Adaptors and allow to keep a particular internal representation of data while showing a different external representation.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 114 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef Superclass::OffsetType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::OffsetType
 

Offset typedef support. An offset is used to access pixel values.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 138 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef ImportImageContainer<unsigned long, PixelType> itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PixelContainer
 

Container used to store pixels in the image.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 132 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef PixelContainer::ConstPointer itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PixelContainerConstPointer
 

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 158 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef PixelContainer::Pointer itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PixelContainerPointer
 

A pointer to the pixel container.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 157 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef TPixel itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PixelType
 

Pixel typedef support. Used to declare pixel type in filters or other operations.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 105 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef SmartPointer<Self> itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::Pointer
 

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 93 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef Superclass::PointType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PointType
 

Origin typedef support. The origin is the "fake" geometric coordinates of the index (0,0). Also for use w/ filters designed for normal images.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 154 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef Superclass::RegionType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::RegionType
 

Region typedef support. A region is used to specify a subset of an image.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 144 of file itkPhasedArray3DSpecialCoordinatesImage.h.

Referenced by itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformContinuousIndexToPhysicalPoint(), itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformIndexToPhysicalPoint(), itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToContinuousIndex(), and itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToIndex().

template<class TPixel>
typedef PhasedArray3DSpecialCoordinatesImage itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::Self
 

Standard class typedefs

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 91 of file itkPhasedArray3DSpecialCoordinatesImage.h.

Referenced by itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::~PhasedArray3DSpecialCoordinatesImage().

template<class TPixel>
typedef Superclass::SizeType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SizeType
 

Size typedef support. A size is used to define region bounds.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 141 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef Superclass::SpacingType itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SpacingType
 

Spacing typedef support. Spacing holds the "fake" size of a pixel, making each pixel look like a 1 unit hyper-cube to filters that were designed for normal images and that therefore use m_Spacing. The spacing is the geometric distance between image samples.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 150 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef SpecialCoordinatesImage<TPixel,3> itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::Superclass
 

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 92 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
typedef TPixel itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::ValueType
 

Typedef alias for PixelType

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

Definition at line 108 of file itkPhasedArray3DSpecialCoordinatesImage.h.


Constructor & Destructor Documentation

template<class TPixel>
itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PhasedArray3DSpecialCoordinatesImage  )  [inline, protected]
 

Get a physical point (in the space which the origin and spacing infomation comes from) from a discrete index (in the index space)

See also:
Transform

Definition at line 306 of file itkPhasedArray3DSpecialCoordinatesImage.h.

template<class TPixel>
virtual itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::~PhasedArray3DSpecialCoordinatesImage  )  [inline, protected, virtual]
 

Get a physical point (in the space which the origin and spacing infomation comes from) from a discrete index (in the index space)

See also:
Transform

Definition at line 313 of file itkPhasedArray3DSpecialCoordinatesImage.h.

References itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::Self.


Member Function Documentation

template<class TPixel>
virtual const char* itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

template<class TPixel>
itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
 

Dimension of the image. This constant is used by functions that are templated over image type (as opposed to being templated over pixel type and dimension) when they need compile time access to the dimension of the image.

template<class TPixel>
Pointer itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

template<class TPixel>
void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Get a physical point (in the space which the origin and spacing infomation comes from) from a discrete index (in the index space)

See also:
Transform

Reimplemented from itk::SpecialCoordinatesImage< TPixel, 3 >.

template<class TPixel>
virtual void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SetAzimuthAngularSeparation double  _arg  )  [virtual]
 

Set the number of radians between each azimuth unit. *

template<class TPixel>
virtual void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SetElevationAngularSeparation double  _arg  )  [virtual]
 

Set the number of radians between each elevation unit. *

template<class TPixel>
virtual void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SetFirstSampleDistance double  _arg  )  [virtual]
 

Set the distance to add to the radius.

template<class TPixel>
virtual void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::SetRadiusSampleSize double  _arg  )  [virtual]
 

Set the number of cartesian units between each unit along the R . *

template<class TPixel>
template<class TCoordRep>
void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformContinuousIndexToPhysicalPoint const ContinuousIndex< TCoordRep, 3 > &  index,
Point< TCoordRep, 3 > &  point
const [inline]
 

Get a physical point (in the space which the origin and spacing infomation comes from) from a continuous index (in the index space)

See also:
Transform

Definition at line 235 of file itkPhasedArray3DSpecialCoordinatesImage.h.

References itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::RegionType.

template<class TPixel>
template<class TCoordRep>
void itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformIndexToPhysicalPoint const IndexType index,
Point< TCoordRep, 3 > &  point
const [inline]
 

Get a physical point (in the space which the origin and spacing infomation comes from) from a discrete index (in the index space)

See also:
Transform

Definition at line 266 of file itkPhasedArray3DSpecialCoordinatesImage.h.

References itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::IndexType, and itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::RegionType.

template<class TPixel>
template<class TCoordRep>
bool itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToContinuousIndex const Point< TCoordRep, 3 > &  point,
ContinuousIndex< TCoordRep, 3 > &  index
const [inline]
 

Get the continuous index from a physical point.

Returns true if the resulting index is within the image, false otherwise.

See also:
Transform

Definition at line 165 of file itkPhasedArray3DSpecialCoordinatesImage.h.

References itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::RegionType.

template<class TPixel>
template<class TCoordRep>
bool itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToIndex const Point< TCoordRep, 3 > &  point,
IndexType index
const [inline]
 

Get the index (discrete) from a physical point. Floating point index results are truncated to integers. Returns true if the resulting index is within the image, false otherwise

See also:
Transform

Definition at line 199 of file itkPhasedArray3DSpecialCoordinatesImage.h.

References itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::IndexType, and itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::RegionType.


The documentation for this class was generated from the following file:
Generated at Thu May 25 02:05:19 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000