Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Friends

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

An image region represents a structured region of data. More...

#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.

Public Types

typedef Index
< itkGetStaticConstMacro(ImageDimension) > 
IndexType
typedef IndexValueType IndexValueArrayType [ImageDimension]
typedef IndexType::IndexValueType IndexValueType
typedef IndexType::OffsetType OffsetType
typedef OffsetType::OffsetValueType OffsetValueType
enum  RegionType {
  ITK_UNSTRUCTURED_REGION,
  ITK_STRUCTURED_REGION
}
typedef ImageRegion Self
typedef Size
< itkGetStaticConstMacro(ImageDimension) > 
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
SizeValueType GetNumberOfPixels () const
virtual Superclass::RegionType GetRegionType () const
const SizeTypeGetSize () const
 ImageRegion ()
 ImageRegion (const Self &region)
 ImageRegion (const IndexType &index, const SizeType &size)
 ImageRegion (const SizeType &size)
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 ()

void SetSize (unsigned long i, SizeValueType sze)
SizeValueType GetSize (unsigned long i) const

void SetIndex (unsigned long i, IndexValueType sze)
IndexValueType GetIndex (unsigned long i) const

bool operator== (const Self &region) const

bool operator!= (const Self &region) const

bool IsInside (const IndexType &index) const

template<typename TCoordRepType >
bool IsInside (const ContinuousIndex< TCoordRepType, VImageDimension > &index) const
bool IsInside (const Self &region) const

void PadByRadius (IndexValueType radius)
void PadByRadius (const IndexValueArrayType radius)
void PadByRadius (const SizeType &radius)

Static Public Member Functions

static unsigned int GetImageDimension ()

Static Public Attributes

static const unsigned int ImageDimension = VImageDimension
static const unsigned int SliceDimension = (ImageDimension - (ImageDimension > 1))

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 >

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 55 of file itkImageRegion.h.


Member Typedef Documentation

template<unsigned int VImageDimension>
typedef Index< itkGetStaticConstMacro( ImageDimension) > itk::ImageRegion< VImageDimension >::IndexType

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

Definition at line 78 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef IndexValueType itk::ImageRegion< VImageDimension >::IndexValueArrayType[ImageDimension]

Definition at line 80 of file itkImageRegion.h.

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

Definition at line 79 of file itkImageRegion.h.

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

Definition at line 81 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef OffsetType::OffsetValueType itk::ImageRegion< VImageDimension >::OffsetValueType

Definition at line 82 of file itkImageRegion.h.

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

Standard class typedefs.

Reimplemented from itk::Region.

Definition at line 59 of file itkImageRegion.h.

template<unsigned int VImageDimension>
typedef Size< itkGetStaticConstMacro( ImageDimension ) > itk::ImageRegion< VImageDimension >::SizeType

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

Definition at line 85 of file itkImageRegion.h.

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

Definition at line 86 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 89 of file itkImageRegion.h.

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

Definition at line 60 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 

Reimplemented in itk::ImageIORegion.

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 105 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 109 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 115 of file itkImageRegion.h.


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 74 of file itkImageRegion.h.

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

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

Definition at line 150 of file itkImageRegion.h.

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>
SizeValueType 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 92 of file itkImageRegion.h.

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

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

Definition at line 143 of file itkImageRegion.h.

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

Test if a continuous index is inside the region. If ITK_USE_CENTERED_PIXEL_COORDINATES_CONSISTENTLY is on, we take into account the fact that each voxel has its center at the integer coordinate and extends half way to the next integer coordinate.

Definition at line 203 of file itkImageRegion.h.

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

Test if a region (the argument) is completely inside of this region. If the region that is passed as argument to this method, has a size of value zero, then it will not be considered to be inside of the current region, even its starting index is inside.

Definition at line 238 of file itkImageRegion.h.

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

Compare two regions.

Definition at line 167 of file itkImageRegion.h.

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 120 of file itkImageRegion.h.

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

Compare two regions.

Definition at line 156 of file itkImageRegion.h.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( IndexValueType  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.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( const SizeType 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.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::PadByRadius ( const IndexValueArrayType  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]

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.

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]

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.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetIndex ( const IndexType index  )  [inline]
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 148 of file itkImageRegion.h.

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 141 of file itkImageRegion.h.

template<unsigned int VImageDimension>
void itk::ImageRegion< VImageDimension >::SetSize ( const SizeType size  )  [inline]
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 294 of file itkImageRegion.h.


Member Data Documentation

template<unsigned int VImageDimension>
const unsigned int itk::ImageRegion< VImageDimension >::ImageDimension = VImageDimension [static]

Dimension of the image available at compile time.

Definition at line 66 of file itkImageRegion.h.

template<unsigned int VImageDimension>
const unsigned int itk::ImageRegion< VImageDimension >::SliceDimension = (ImageDimension - (ImageDimension > 1)) [static]

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

Definition at line 71 of file itkImageRegion.h.


The documentation for this class was generated from the following file:

Generated at Mon Jul 12 2010 23:15:11 for ITK by doxygen 1.7.1 written by Dimitri van Heesch, © 1997-2000