ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Private Attributes | List of all members
itk::ImageSliceConstIteratorWithIndex< TImage > Class Template Reference

#include <itkImageSliceConstIteratorWithIndex.h>

+ Inheritance diagram for itk::ImageSliceConstIteratorWithIndex< TImage >:
+ Collaboration diagram for itk::ImageSliceConstIteratorWithIndex< TImage >:

Detailed Description

template<typename TImage>
class itk::ImageSliceConstIteratorWithIndex< TImage >

Multi-dimensional image iterator which only walks a region.

A multi-dimensional image iterator that extends the ImageLinearConstIteratorWithIndex from iteration along lines in an image to iteration along both lines and planes (slices) within an image. A slice is defined as a 2D plane spanned by two vectors pointing along orthogonal coordinate axes. The slice orientation of the iterator is defined by specifying its two spanning axes using the methods:

where n is the number of the axis.

Use the following methods to move the iterator between slices:

To test the position of the iterator with respect to the end or beginning of the slice use the following methods:

The following code, for example, illustrates the typical use of this iterator. For more information please see the Software Guide.

ImageSliceConstIteratorWithIndex<ImageType> it( image, image->GetRequestedRegion() );
it.SetFirstDirection(2);
it.SetSecondDirection(0);
it.GoToBegin();
while( !it.IsAtEnd() )
{
while( !it.IsAtEndOfSlice() )
{
while( !it.IsAtEndOfLine() )
{
value = it.Get(); // it.Set() doesn't exist in the Const Iterator
++it;
}
it.NextLine();
}
it.NextSlice();
}
Examples:
itkImageSliceIteratorTest.cxx.

Definition at line 114 of file itkImageSliceConstIteratorWithIndex.h.

Public Types

typedef Superclass::AccessorType AccessorType
 
typedef Superclass::ImageType ImageType
 
typedef Superclass::IndexType IndexType
 
typedef
Superclass::InternalPixelType 
InternalPixelType
 
typedef Superclass::OffsetType OffsetType
 
typedef Superclass::PixelContainer PixelContainer
 
typedef
Superclass::PixelContainerPointer 
PixelContainerPointer
 
typedef Superclass::PixelType PixelType
 
typedef Superclass::RegionType RegionType
 
typedef
ImageSliceConstIteratorWithIndex 
Self
 
typedef Superclass::SizeType SizeType
 
typedef
ImageConstIteratorWithIndex
< TImage > 
Superclass
 
- Public Types inherited from itk::ImageConstIteratorWithIndex< TImage >
typedef TImage::AccessorFunctorType AccessorFunctorType
 
typedef TImage::AccessorType AccessorType
 
typedef TImage ImageType
 
typedef TImage::IndexType IndexType
 
typedef IndexType::IndexValueType IndexValueType
 
typedef TImage::InternalPixelType InternalPixelType
 
typedef TImage::OffsetType OffsetType
 
typedef OffsetType::OffsetValueType OffsetValueType
 
typedef TImage::PixelContainer PixelContainer
 
typedef PixelContainer::Pointer PixelContainerPointer
 
typedef TImage::PixelType PixelType
 
typedef TImage::RegionType RegionType
 
typedef ImageConstIteratorWithIndex Self
 
typedef TImage::SizeType SizeType
 
typedef SizeType::SizeValueType SizeValueType
 

Public Member Functions

void GoToBeginOfSlice (void)
 
 ImageSliceConstIteratorWithIndex ()
 
 ImageSliceConstIteratorWithIndex (const ImageConstIteratorWithIndex< TImage > &it)
 
bool IsAtEndOfLine (void)
 
bool IsAtEndOfSlice (void)
 
bool IsAtReverseEndOfLine (void)
 
bool IsAtReverseEndOfSlice (void)
 
void NextLine (void)
 
void NextSlice (void)
 
Selfoperator++ ()
 
Selfoperator-- ()
 
void PreviousLine (void)
 
void PreviousSlice (void)
 
void SetFirstDirection (unsigned int direction)
 
void SetSecondDirection (unsigned int direction)
 
 ImageSliceConstIteratorWithIndex (const ImageType *ptr, const RegionType &region)
 
- Public Member Functions inherited from itk::ImageConstIteratorWithIndex< TImage >
PixelType Get (void) const
 
const IndexTypeGetIndex () const
 
const RegionTypeGetRegion () const
 
void GoToBegin (void)
 
void GoToReverseBegin (void)
 
 ImageConstIteratorWithIndex ()
 
 ImageConstIteratorWithIndex (const Self &it)
 
 ImageConstIteratorWithIndex (const TImage *ptr, const RegionType &region)
 
bool IsAtEnd (void) const
 
bool IsAtReverseEnd (void) const
 
 itkLegacyMacro (Self Begin(void) const)
 
 itkLegacyMacro (Self End(void) const)
 
bool operator!= (const Self &it) const
 
bool operator< (const Self &it) const
 
bool operator<= (const Self &it) const
 
Selfoperator= (const Self &it)
 
bool operator== (const Self &it) const
 
bool operator> (const Self &it) const
 
bool operator>= (const Self &it) const
 
bool Remaining ()
 
const PixelTypeValue (void) const
 
virtual ~ImageConstIteratorWithIndex ()
 
void SetIndex (const IndexType &ind)
 

Private Attributes

unsigned int m_Direction_A
 
unsigned int m_Direction_B
 
SizeValueType m_LineJump
 
SizeValueType m_PixelJump
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::ImageConstIteratorWithIndex< TImage >
static unsigned int GetImageDimension ()
 
- Static Public Attributes inherited from itk::ImageConstIteratorWithIndex< TImage >
static const unsigned int ImageDimension = TImage::ImageDimension
 
- Protected Attributes inherited from itk::ImageConstIteratorWithIndex< TImage >
const InternalPixelTypem_Begin
 
IndexType m_BeginIndex
 
const InternalPixelTypem_End
 
IndexType m_EndIndex
 
TImage::ConstWeakPointer m_Image
 
OffsetValueType m_OffsetTable [ImageDimension+1]
 
AccessorType m_PixelAccessor
 
AccessorFunctorType m_PixelAccessorFunctor
 
const InternalPixelTypem_Position
 
IndexType m_PositionIndex
 
RegionType m_Region
 
bool m_Remaining
 

Member Typedef Documentation

template<typename TImage>
typedef Superclass::AccessorType itk::ImageSliceConstIteratorWithIndex< TImage >::AccessorType

Definition at line 131 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::ImageType itk::ImageSliceConstIteratorWithIndex< TImage >::ImageType

Definition at line 126 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::IndexType itk::ImageSliceConstIteratorWithIndex< TImage >::IndexType

Inherit types from the superclass

Definition at line 122 of file itkImageSliceConstIteratorWithIndex.h.

Definition at line 129 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::OffsetType itk::ImageSliceConstIteratorWithIndex< TImage >::OffsetType

Definition at line 124 of file itkImageSliceConstIteratorWithIndex.h.

Definition at line 127 of file itkImageSliceConstIteratorWithIndex.h.

Definition at line 128 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::PixelType itk::ImageSliceConstIteratorWithIndex< TImage >::PixelType

Definition at line 130 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::RegionType itk::ImageSliceConstIteratorWithIndex< TImage >::RegionType

Definition at line 125 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef ImageSliceConstIteratorWithIndex itk::ImageSliceConstIteratorWithIndex< TImage >::Self

Standard class typedefs.

Definition at line 118 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef Superclass::SizeType itk::ImageSliceConstIteratorWithIndex< TImage >::SizeType

Definition at line 123 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
typedef ImageConstIteratorWithIndex< TImage > itk::ImageSliceConstIteratorWithIndex< TImage >::Superclass

Definition at line 119 of file itkImageSliceConstIteratorWithIndex.h.

Constructor & Destructor Documentation

template<typename TImage>
itk::ImageSliceConstIteratorWithIndex< TImage >::ImageSliceConstIteratorWithIndex ( )
inline

Default constructor. Needed since we provide a cast constructor.

Definition at line 134 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
itk::ImageSliceConstIteratorWithIndex< TImage >::ImageSliceConstIteratorWithIndex ( const ImageType ptr,
const RegionType region 
)
inline

Constructor establishes an iterator to walk a particular image and a particular region of that image.

Definition at line 138 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
itk::ImageSliceConstIteratorWithIndex< TImage >::ImageSliceConstIteratorWithIndex ( const ImageConstIteratorWithIndex< TImage > &  it)
inline

Constructor that can be used to cast from an ImageIterator to an ImageSliceConstIteratorWithIndex. Many routines return an ImageIterator, but for a particular task, you may want an ImageSliceConstIteratorWithIndex. Rather than provide overloaded APIs that return different types of Iterators, itk returns ImageIterators and uses constructors to cast from an ImageIterator to a ImageSliceConstIteratorWithIndex.

Definition at line 153 of file itkImageSliceConstIteratorWithIndex.h.

References itk::ImageConstIteratorWithIndex< TImage >::operator=().

Member Function Documentation

template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::GoToBeginOfSlice ( void  )

Go to the first pixel of the current slice

template<typename TImage>
bool itk::ImageSliceConstIteratorWithIndex< TImage >::IsAtEndOfLine ( void  )

Test if the index is at the end of line

template<typename TImage>
bool itk::ImageSliceConstIteratorWithIndex< TImage >::IsAtEndOfSlice ( void  )

Test if the index is at the end of the slice

template<typename TImage>
bool itk::ImageSliceConstIteratorWithIndex< TImage >::IsAtReverseEndOfLine ( void  )

Test if the index is at the begin of line

template<typename TImage>
bool itk::ImageSliceConstIteratorWithIndex< TImage >::IsAtReverseEndOfSlice ( void  )

Test if the index is at the begin of the slice

template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::NextLine ( void  )

Go to the next line

See Also
operator++
EndOfLine
End
NextSlice
template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::NextSlice ( void  )

Go to the next slice

See Also
operator++
EndOfLine
End
template<typename TImage>
Self& itk::ImageSliceConstIteratorWithIndex< TImage >::operator++ ( )
inline

Increment (prefix) the selected dimension. No bounds checking is performed.

See Also
operator–
GetIndex
template<typename TImage>
Self& itk::ImageSliceConstIteratorWithIndex< TImage >::operator-- ( )
inline

Decrement (prefix) the selected dimension. No bounds checking is performed.

See Also
operator++
GetIndex
template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::PreviousLine ( void  )

Go to the next line

See Also
operator–
BeginOfLine
BeginOfSlice
Begin
template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::PreviousSlice ( void  )

Go to the next slice

See Also
operator–
BeginOfLine
BeginOfSlice
Begin
template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::SetFirstDirection ( unsigned int  direction)

Set the fastest direction of movement

template<typename TImage>
void itk::ImageSliceConstIteratorWithIndex< TImage >::SetSecondDirection ( unsigned int  direction)

Set the second fastest direction of movement

Member Data Documentation

template<typename TImage>
unsigned int itk::ImageSliceConstIteratorWithIndex< TImage >::m_Direction_A
private

Definition at line 206 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
unsigned int itk::ImageSliceConstIteratorWithIndex< TImage >::m_Direction_B
private

Definition at line 207 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
SizeValueType itk::ImageSliceConstIteratorWithIndex< TImage >::m_LineJump
private

Definition at line 205 of file itkImageSliceConstIteratorWithIndex.h.

template<typename TImage>
SizeValueType itk::ImageSliceConstIteratorWithIndex< TImage >::m_PixelJump
private

Definition at line 204 of file itkImageSliceConstIteratorWithIndex.h.


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