ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes
itk::ImageRegion< VImageDimension > Class Template Reference

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

#include <itkImageRegion.h>

Inheritance diagram for itk::ImageRegion< VImageDimension >:
Collaboration diagram for itk::ImageRegion< VImageDimension >:

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
typedef ImageRegion Self
typedef Size
< itkGetStaticConstMacro(ImageDimension) > 
SizeType
typedef SizeType::SizeValueType SizeValueType
typedef ImageRegion
< itkGetStaticConstMacro(SliceDimension) > 
SliceRegion
typedef Region Superclass

Public Member Functions

const IndexTypeGetIndex () const
virtual const char * GetNameOfClass () const
virtual Superclass::RegionType GetRegionType () const
const SizeTypeGetSize () const
IndexType GetUpperIndex () const
 ImageRegion (const Self &region)
 ImageRegion ()
 ImageRegion (const IndexType &index, const SizeType &size)
 ImageRegion (const SizeType &size)
bool operator!= (const Self &region) const
void operator= (const Self &region)
bool operator== (const Self &region) const
void SetIndex (const IndexType &index)
void SetSize (const SizeType &size)
void SetUpperIndex (const IndexType &idx)
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 IsInside (const IndexType &index) const

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 ) )
IndexType m_Index
SizeType m_Size
class ImageBase< VImageDimension >
template<typename TCoordRepType >
bool IsInside (const ContinuousIndex< TCoordRepType, VImageDimension > &index) const
bool IsInside (const Self &region) const
SizeValueType GetNumberOfPixels () const
void PadByRadius (OffsetValueType radius)
void PadByRadius (const IndexValueArrayType radius)
void PadByRadius (const SizeType &radius)
bool ShrinkByRadius (OffsetValueType radius)
bool ShrinkByRadius (const IndexValueArrayType radius)
bool ShrinkByRadius (const SizeType &radius)
bool Crop (const Self &region)
SliceRegion Slice (const unsigned long dim) const
virtual void PrintSelf (std::ostream &os, Indent indent) const

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
Wiki Examples:

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

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

Definition at line 94 of file itkImageRegion.h.

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

Definition at line 93 of file itkImageRegion.h.

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

Definition at line 95 of file itkImageRegion.h.

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

Definition at line 96 of file itkImageRegion.h.

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

Standard class typedefs.

Reimplemented from itk::Region.

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

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

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

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

Definition at line 74 of file itkImageRegion.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 119 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 123 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 129 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 88 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 166 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 106 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 158 of file itkImageRegion.h.

template<unsigned int VImageDimension>
IndexType itk::ImageRegion< VImageDimension >::GetUpperIndex ( ) const

Get index defining the upper corner of the region.

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

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

Compare two regions.

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

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

Compare two regions.

Definition at line 178 of file itkImageRegion.h.

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

Friends of ImageRegion

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

Friends of ImageRegion

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.

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

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

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

Modify the Size of the ImageRegion so that the provided index will be the upper corner index.

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::ShrinkByRadius ( const IndexValueArrayType  radius)

Friends of ImageRegion

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::ShrinkByRadius ( OffsetValueType  radius)

Shrink an image region by the specified radius. The region can be shrunk uniformly in all dimension or can be shink by different amounts in each direction. If the shink operation fails because the radius is too large, this method returns false.

template<unsigned int VImageDimension>
bool itk::ImageRegion< VImageDimension >::ShrinkByRadius ( const SizeType radius)

Friends of ImageRegion

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

template<unsigned int VImageDimension>
IndexType itk::ImageRegion< VImageDimension >::m_Index [private]

Friends of ImageRegion

Definition at line 318 of file itkImageRegion.h.

template<unsigned int VImageDimension>
SizeType itk::ImageRegion< VImageDimension >::m_Size [private]

Friends of ImageRegion

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


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