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

itk::ImageRegion< VImageDimension > Class Template Reference
[Image Representation Objects]

#include <itkImageRegion.h>

Inheritance diagram for itk::ImageRegion< VImageDimension >:

Inheritance graph
[legend]
Collaboration diagram for itk::ImageRegion< VImageDimension >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<unsigned int VImageDimension>
class itk::ImageRegion< VImageDimension >

An image region represents a structured region of data.

ImageRegion is an class that represents some structured portion or piece of an Image. The ImageRegion is represented with an index and a size in each of the n-dimensions of the image. (The index is the corner of the image, the size is the lengths of the image in each of the topological directions.)

See also:
Region

Index

Size

MeshRegion

Definition at line 54 of file itkImageRegion.h.

Public Types

typedef Index< VImageDimension > IndexType
typedef IndexType::IndexValueType IndexValueType
enum  RegionType {
  ITK_UNSTRUCTURED_REGION,
  ITK_STRUCTURED_REGION
}
typedef ImageRegion Self
typedef Size< VImageDimension > SizeType
typedef SizeType::SizeValueType SizeValueType
typedef ImageRegion< itkGetStaticConstMacro(SliceDimension)> SliceRegion
typedef Region Superclass

Public Member Functions

bool Crop (const Self &region)
const IndexTypeGetIndex () const
virtual const char * GetNameOfClass () const
unsigned long GetNumberOfPixels () const
virtual Superclass::RegionType GetRegionType () const
const SizeTypeGetSize () const
 ImageRegion (const SizeType &size)
 ImageRegion (const IndexType &index, const SizeType &size)
 ImageRegion (const Self &region)
 ImageRegion ()
 itkStaticConstMacro (SliceDimension, unsigned int,(VImageDimension-(VImageDimension > 1)))
 itkStaticConstMacro (ImageDimension, unsigned int, VImageDimension)
void operator= (const Self &region)
virtual void Print (std::ostream &os, Indent indent=0) const
void SetIndex (const IndexType &index)
void SetSize (const SizeType &size)
SliceRegion Slice (const unsigned long dim) const
virtual ~ImageRegion ()
IndexValueType GetIndex (unsigned long i) const
void SetIndex (unsigned long i, IndexValueType sze)
SizeValueType GetSize (unsigned long i) const
void SetSize (unsigned long i, SizeValueType sze)
bool IsInside (const Self &region) const
template<typename TCoordRepType>
bool IsInside (const ContinuousIndex< TCoordRepType, VImageDimension > &index) const
bool IsInside (const IndexType &index) const
bool operator!= (const Self &region) const
bool operator== (const Self &region) const
void PadByRadius (const SizeType &radius)
void PadByRadius (const unsigned long radius[VImageDimension])
void PadByRadius (unsigned long radius)

Static Public Member Functions

static unsigned int GetImageDimension ()

Protected Member Functions

virtual void PrintSelf (std::ostream &os, Indent indent) const
virtual void PrintHeader (std::ostream &os, Indent indent) const
virtual void PrintTrailer (std::ostream &os, Indent indent) const

Friends

class ImageBase< VImageDimension >


Member Typedef Documentation

template<unsigned int VImageDimension>
typedef Index<VImageDimension> itk::ImageRegion< VImageDimension >::IndexType

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

Definition at line 77 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef IndexType::IndexValueType itk::ImageRegion< VImageDimension >::IndexValueType

Definition at line 78 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef ImageRegion itk::ImageRegion< VImageDimension >::Self

Standard class typedefs.

Reimplemented from itk::Region.

Definition at line 58 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef Size<VImageDimension> itk::ImageRegion< VImageDimension >::SizeType

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

Definition at line 81 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef SizeType::SizeValueType itk::ImageRegion< VImageDimension >::SizeValueType

Definition at line 82 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef ImageRegion<itkGetStaticConstMacro(SliceDimension)> itk::ImageRegion< VImageDimension >::SliceRegion

Slice region typedef. SliceRegion is one dimension less than Self.

Definition at line 85 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef Region itk::ImageRegion< VImageDimension >::Superclass

Definition at line 59 of file itkImageRegion.h.


Member Enumeration Documentation

enum itk::Region::RegionType [inherited]

Enums used to describe the extent types.

Enumerator:
ITK_UNSTRUCTURED_REGION 
ITK_STRUCTURED_REGION 

Definition at line 63 of file itkRegion.h.


Constructor & Destructor Documentation

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::ImageRegion (  ) 

Constructor. ImageRegion is a lightweight object that is not reference counted, so the constructor is public.

template<unsigned int VImageDimension>
virtual itk::ImageRegion< VImageDimension >::~ImageRegion (  )  [virtual]

Destructor. ImageRegion is a lightweight object that is not reference counted, so the destructor is public.

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::ImageRegion ( const Self region  )  [inline]

Copy constructor. ImageRegion is a lightweight object that is not reference counted, so the copy constructor is public.

Definition at line 101 of file itkImageRegion.h.

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::ImageRegion ( const IndexType index,
const SizeType size 
) [inline]

Constructor that takes an index and size. ImageRegion is a lightweight object that is not reference counted, so this constructor is public.

Definition at line 105 of file itkImageRegion.h.

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::ImageRegion ( const SizeType size  )  [inline]

Constructor that takes a size and assumes an index of zeros. ImageRegion is lightweight object that is not reference counted so this constructor is public.

Definition at line 111 of file itkImageRegion.h.

References itk::Size< VDimension >::Fill().


Member Function Documentation

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::Crop ( const Self region  ) 

Crop a region by another region. If this region is outside of the crop, this method returns false and does not modify the region. Otherwise, this method returns true and the region is modified to reflect the crop.

template<unsigned int VImageDimension>
static unsigned int itk::ImageRegion< VImageDimension >::GetImageDimension (  )  [inline, static]

Dimension of the image available at run time.

Definition at line 73 of file itkImageRegion.h.

template<unsigned int VImageDimension>
IndexValueType itk::ImageRegion< VImageDimension >::GetIndex ( unsigned long  i  )  const [inline]

Definition at line 146 of file itkImageRegion.h.

template<unsigned int VImageDimension>
const IndexType& itk::ImageRegion< VImageDimension >::GetIndex ( void   )  const [inline]

Get index defining the corner of the region.

Definition at line 124 of file itkImageRegion.h.

Referenced by itk::SpatialObject< ::itk::GetMeshDimension< TMesh >::PointDimension >::ComputeIndex(), itk::SpatialObject< ::itk::GetMeshDimension< TMesh >::PointDimension >::ComputeOffset(), itk::ImageIORegionAdaptor< VDimension >::Convert(), itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion(), itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion(), and itk::ImageRegion< VImageDimension >::IsInside().

template<unsigned int VImageDimension>
virtual const char* itk::ImageRegion< VImageDimension >::GetNameOfClass (  )  const [virtual]

Standard part of all itk objects.

Reimplemented from itk::Region.

template<unsigned int VImageDimension>
unsigned long itk::ImageRegion< VImageDimension >::GetNumberOfPixels (  )  const

Get the number of pixels contained in this region. This just multiplies the size components.

template<unsigned int VImageDimension>
virtual Superclass::RegionType itk::ImageRegion< VImageDimension >::GetRegionType (  )  const [inline, virtual]

Return the region type. Images are described with structured regions.

Implements itk::Region.

Definition at line 88 of file itkImageRegion.h.

template<unsigned int VImageDimension>
SizeValueType itk::ImageRegion< VImageDimension >::GetSize ( unsigned long  i  )  const [inline]

Definition at line 139 of file itkImageRegion.h.

template<unsigned int VImageDimension>
const SizeType& itk::ImageRegion< VImageDimension >::GetSize ( void   )  const [inline]

Get the size of the region.

Definition at line 133 of file itkImageRegion.h.

Referenced by itk::ImageIORegionAdaptor< VDimension >::Convert(), itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion(), itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion(), itk::ImageRegion< VImageDimension >::IsInside(), itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformContinuousIndexToPhysicalPoint(), itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformIndexToPhysicalPoint(), itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToContinuousIndex(), and itk::PhasedArray3DSpecialCoordinatesImage< TPixel >::TransformPhysicalPointToIndex().

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::IsInside ( const Self region  )  const [inline]

Test if a region (the argument) is completly inside of this region

Definition at line 219 of file itkImageRegion.h.

References itk::ImageRegion< VImageDimension >::GetIndex(), and itk::ImageRegion< VImageDimension >::GetSize().

template<unsigned int VImageDimension>
template<typename TCoordRepType>
bool itk::ImageRegion< VImageDimension >::IsInside ( const ContinuousIndex< TCoordRepType, VImageDimension > &  index  )  const [inline]

Test if an index is inside

Definition at line 195 of file itkImageRegion.h.

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::IsInside ( const IndexType index  )  const [inline]

Test if an index is inside

Definition at line 175 of file itkImageRegion.h.

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

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::itkStaticConstMacro ( SliceDimension  ,
unsigned  int,
(VImageDimension-(VImageDimension > 1))   
)

Dimension one lower than the image unless the image is one dimensional in which case the SliceDimension is also one dimensional.

template<unsigned int VImageDimension>
itk::ImageRegion< VImageDimension >::itkStaticConstMacro ( ImageDimension  ,
unsigned  int,
VImageDimension   
)

Dimension of the image available at compile time.

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::operator!= ( const Self region  )  const [inline]

Compare two regions.

Definition at line 163 of file itkImageRegion.h.

References itk::ImageRegion< VImageDimension >::m_Index, and itk::ImageRegion< VImageDimension >::m_Size.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::operator= ( const Self region  )  [inline]

operator=. ImageRegion is a lightweight object that is not reference counted, so operator= is public.

Definition at line 116 of file itkImageRegion.h.

References itk::ImageRegion< VImageDimension >::m_Index, and itk::ImageRegion< VImageDimension >::m_Size.

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::operator== ( const Self region  )  const [inline]

Compare two regions.

Definition at line 152 of file itkImageRegion.h.

References itk::ImageRegion< VImageDimension >::m_Index, and itk::ImageRegion< VImageDimension >::m_Size.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( const SizeType radius  ) 

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( const unsigned long  radius[VImageDimension]  ) 

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( unsigned long  radius  ) 

Pad an image region by the specified radius. Region can be padded uniformly in all dimensions or can be padded by different amounts in each dimension.

virtual void itk::Region::Print ( std::ostream &  os,
Indent  indent = 0 
) const [virtual, inherited]

Print the region.

virtual void itk::Region::PrintHeader ( std::ostream &  os,
Indent  indent 
) const [protected, virtual, inherited]

template<unsigned int VImageDimension>
virtual void itk::ImageRegion< VImageDimension >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::Region.

virtual void itk::Region::PrintTrailer ( std::ostream &  os,
Indent  indent 
) const [protected, virtual, inherited]

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetIndex ( unsigned long  i,
IndexValueType  sze 
) [inline]

Convenience methods to get and set the index of the particular dimension i.

Definition at line 144 of file itkImageRegion.h.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetIndex ( const IndexType index  )  [inline]

Set the index defining the corner of the region.

Definition at line 120 of file itkImageRegion.h.

Referenced by itk::ImageIORegionAdaptor< VDimension >::Convert(), itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion(), and itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion().

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetSize ( unsigned long  i,
SizeValueType  sze 
) [inline]

Convenience methods to get and set the size of the particular dimension i.

Definition at line 137 of file itkImageRegion.h.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetSize ( const SizeType size  )  [inline]

Set the size of the region. This plus the index determines the rectangular shape, or extent, of the region.

Definition at line 129 of file itkImageRegion.h.

Referenced by itk::ImageIORegionAdaptor< VDimension >::Convert(), itk::ImageToImageFilterDetail::ExtractImageFilterCopyRegion(), itk::ImageToImageFilterDetail::ImageToImageFilterDefaultCopyRegion(), itk::VectorImage< TPixelType, Dimension >::SetRegions(), itk::SpecialCoordinatesImage< TPixel, 3 >::SetRegions(), and itk::Image< itk::BloxBoundaryPointPixel< TImageDimension >, TImageDimension >::SetRegions().

template<unsigned int VImageDimension>
SliceRegion itk::ImageRegion< VImageDimension >::Slice ( const unsigned long  dim  )  const

Slice a region, producing a region that is one dimension lower than the current region. Parameter "dim" specifies which dimension to remove.


Friends And Related Function Documentation

template<unsigned int VImageDimension>
friend class ImageBase< VImageDimension > [friend]

Friends of ImageRegion

Definition at line 275 of file itkImageRegion.h.


The documentation for this class was generated from the following file:
Generated at Sun Sep 23 17:51:55 2007 for ITK by doxygen 1.5.1 written by Dimitri van Heesch, © 1997-2000