ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itk::ImageRegionIterator< TImage > Class Template Reference

#include <itkImageRegionIterator.h>

Detailed Description

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

A multi-dimensional iterator templated over image type that walks a region of pixels.

The itk::ImageRegionIterator is optimized for iteration speed and is the first choice for iterative, pixel-wise operations on an image. ImageRegionIterator is the least specialized of the ITK image iterator classes. ImageRegionIterator is templated over the image type, and is constrained to walk only within the specified region and along a line parallel to one of the coordinate axes, "wrapping" to the next line as it reaches the boundary of the image. To walk the entire image, specify the region to be image->GetRequestedRegion().

Most of the functionality is inherited from the ImageRegionConstIterator. The current class only adds write access to image pixels.

MORE INFORMATION
For a complete description of the ITK Image Iterators and their API, please see the Iterators chapter in the ITK Software Guide. The ITK Software Guide is available in print and as a free .pdf download from https://www.itk.org.

example ImageRegionIterator.cxx

See also
ImageConstIterator
ConditionalConstIterator
ConstNeighborhoodIterator
ConstShapedNeighborhoodIterator
ConstSliceIterator
CorrespondenceDataStructureIterator
FloodFilledFunctionConditionalConstIterator
FloodFilledImageFunctionConditionalConstIterator
FloodFilledImageFunctionConditionalIterator
FloodFilledSpatialFunctionConditionalConstIterator
FloodFilledSpatialFunctionConditionalIterator
ImageConstIterator
ImageConstIteratorWithIndex
ImageIterator
ImageIteratorWithIndex
ImageLinearConstIteratorWithIndex
ImageLinearIteratorWithIndex
ImageRandomConstIteratorWithIndex
ImageRandomIteratorWithIndex
ImageRegionConstIterator
ImageRegionConstIteratorWithIndex
ImageRegionExclusionConstIteratorWithIndex
ImageRegionExclusionIteratorWithIndex
ImageRegionIterator
ImageRegionIteratorWithIndex
ImageRegionReverseConstIterator
ImageRegionReverseIterator
ImageReverseConstIterator
ImageReverseIterator
ImageSliceConstIteratorWithIndex
ImageSliceIteratorWithIndex
NeighborhoodIterator
PathConstIterator
PathIterator
ShapedNeighborhoodIterator
SliceIterator
ImageConstIteratorWithIndex
ImageRegionRange
ImageRegionIndexRange
ITK Sphinx Examples:
Examples
Examples/Filtering/DiffusionTensor3DReconstructionImageFilter.cxx, Examples/Filtering/GaussianBlurImageFunction.cxx, Examples/Iterators/ImageRegionIterator.cxx, Examples/Iterators/NeighborhoodIterators1.cxx, Examples/Iterators/NeighborhoodIterators2.cxx, Examples/Iterators/NeighborhoodIterators3.cxx, Examples/Iterators/NeighborhoodIterators4.cxx, Examples/Iterators/NeighborhoodIterators5.cxx, Examples/Iterators/ShapedNeighborhoodIterators1.cxx, Examples/Iterators/ShapedNeighborhoodIterators2.cxx, Examples/RegistrationITKv4/BSplineWarping1.cxx, Examples/RegistrationITKv4/BSplineWarping2.cxx, Examples/RegistrationITKv4/DeformableRegistration12.cxx, Examples/RegistrationITKv4/DeformableRegistration13.cxx, Examples/RegistrationITKv4/DeformableRegistration14.cxx, Examples/RegistrationITKv4/DeformableRegistration15.cxx, Examples/RegistrationITKv4/DeformableRegistration2.cxx, Examples/RegistrationITKv4/DeformableRegistration5.cxx, Examples/RegistrationITKv4/ThinPlateSplineWarp.cxx, Examples/Segmentation/GibbsPriorImageFilter1.cxx, Examples/SpatialObjects/ImageMaskSpatialObject.cxx, Examples/SpatialObjects/ImageSpatialObject.cxx, and Examples/Statistics/BayesianClassifierInitializer.cxx.

Definition at line 80 of file itkImageRegionIterator.h.

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

Public Types

using AccessorType
 
using ImageType
 
using IndexType
 
using InternalPixelType
 
using OffsetType
 
using PixelContainer
 
using PixelContainerPointer
 
using PixelType
 
using RegionType
 
using Self = ImageRegionIterator
 
using SizeType
 
using Superclass = ImageRegionConstIterator<TImage>
 
- Public Types inherited from itk::ImageRegionConstIterator< TImage >
using AccessorType
 
using ImageType
 
using IndexType
 
using InternalPixelType
 
using OffsetType
 
using PixelContainer
 
using PixelContainerPointer
 
using PixelType
 
using RegionType
 
using Self = ImageRegionConstIterator
 
using SizeType
 
using Superclass = ImageConstIterator<TImage>
 
- Public Types inherited from itk::ImageConstIterator< TImage >
using AccessorFunctorType = typename TImage::AccessorFunctorType
 
using AccessorType = typename TImage::AccessorType
 
using ImageType = TImage
 
using IndexType = typename TImage::IndexType
 
using InternalPixelType = typename TImage::InternalPixelType
 
using OffsetType = typename TImage::OffsetType
 
using PixelContainer = typename TImage::PixelContainer
 
using PixelContainerPointer = typename PixelContainer::Pointer
 
using PixelType = typename TImage::PixelType
 
using RegionType = typename TImage::RegionType
 
using Self = ImageConstIterator
 
using SizeType = typename TImage::SizeType
 

Public Member Functions

 ImageRegionIterator ()=default
 
 ImageRegionIterator (const ImageIterator< TImage > &it)
 
 ImageRegionIterator (ImageType *ptr, const RegionType &region)
 
void Set (const PixelType &value) const
 
PixelTypeValue ()
 
- Public Member Functions inherited from itk::ImageRegionConstIterator< TImage >
const char * GetNameOfClass () const override
 
void GoToBegin ()
 
void GoToEnd ()
 
 ImageRegionConstIterator (const ImageConstIterator< TImage > &it)
 
 ImageRegionConstIterator (const ImageIterator< TImage > &it)
 
 ImageRegionConstIterator ()
 
 ImageRegionConstIterator (const ImageType *ptr, const RegionType &region)
 
void SetIndex (const IndexType &ind) override
 
Selfoperator++ ()
 
Selfoperator-- ()
 
- Public Member Functions inherited from itk::ImageConstIterator< TImage >
PixelType Get () const
 
const ImageTypeGetImage () const
 
const IndexType GetIndex () const
 
const RegionTypeGetRegion () const
 
void GoToBegin ()
 
void GoToEnd ()
 
 ImageConstIterator (const Self &it)
 
bool IsAtBegin () const
 
bool IsAtEnd () const
 
 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (Self)
 
bool operator< (const Self &it) const
 
bool operator<= (const Self &it) const
 
bool operator== (const Self &it) const
 
bool operator> (const Self &it) const
 
bool operator>= (const Self &it) const
 
virtual void SetRegion (const RegionType &region)
 
const PixelTypeValue () const
 
virtual ~ImageConstIterator ()=default
 
 ImageConstIterator ()
 
 ImageConstIterator (const ImageType *ptr, const RegionType &region)
 
Selfoperator= (const Self &it)
 

Protected Member Functions

 ImageRegionIterator (const ImageRegionConstIterator< TImage > &it)
 
Selfoperator= (const ImageRegionConstIterator< TImage > &it)
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::ImageConstIterator< TImage >
static unsigned int GetImageIteratorDimension ()
 
- Static Public Attributes inherited from itk::ImageRegionConstIterator< TImage >
static constexpr unsigned int ImageIteratorDimension = Superclass::ImageIteratorDimension
 
- Static Public Attributes inherited from itk::ImageConstIterator< TImage >
static constexpr unsigned int ImageIteratorDimension = TImage::ImageDimension
 
- Protected Attributes inherited from itk::ImageRegionConstIterator< TImage >
OffsetValueType m_SpanBeginOffset {}
 
OffsetValueType m_SpanEndOffset {}
 
- Protected Attributes inherited from itk::ImageConstIterator< TImage >
OffsetValueType m_BeginOffset {}
 
const InternalPixelTypem_Buffer {}
 
OffsetValueType m_EndOffset {}
 
TImage::ConstWeakPointer m_Image {}
 
OffsetValueType m_Offset {}
 
AccessorType m_PixelAccessor {}
 
AccessorFunctorType m_PixelAccessorFunctor {}
 
RegionType m_Region {}
 

Member Typedef Documentation

◆ AccessorType

template<typename TImage>
using itk::ImageConstIterator< TImage >::AccessorType

Accessor type that convert data between internal and external representations.

Definition at line 137 of file itkImageConstIterator.h.

◆ ImageType

template<typename TImage>
using itk::ImageConstIterator< TImage >::ImageType

Image type alias support

Definition at line 132 of file itkImageConstIterator.h.

◆ IndexType

template<typename TImage>
using itk::ImageConstIterator< TImage >::IndexType

Index type alias support

Definition at line 128 of file itkImageConstIterator.h.

◆ InternalPixelType

template<typename TImage>
using itk::ImageConstIterator< TImage >::InternalPixelType

Internal Pixel Type

Definition at line 135 of file itkImageConstIterator.h.

◆ OffsetType

template<typename TImage>
using itk::ImageConstIterator< TImage >::OffsetType

Offset type alias support

Definition at line 130 of file itkImageConstIterator.h.

◆ PixelContainer

template<typename TImage>
using itk::ImageConstIterator< TImage >::PixelContainer

PixelContainer type alias support. Used to refer to the container for the pixel data. While this was already typedef'ed in the superclass it needs to be redone here for this subclass to compile properly with gcc.

Definition at line 133 of file itkImageConstIterator.h.

◆ PixelContainerPointer

template<typename TImage>
using itk::ImageConstIterator< TImage >::PixelContainerPointer

Definition at line 134 of file itkImageConstIterator.h.

◆ PixelType

template<typename TImage>
using itk::ImageConstIterator< TImage >::PixelType

External Pixel Type

Definition at line 136 of file itkImageConstIterator.h.

◆ RegionType

template<typename TImage>
using itk::ImageConstIterator< TImage >::RegionType

Region type alias support

Definition at line 131 of file itkImageConstIterator.h.

◆ Self

template<typename TImage>
using itk::ImageRegionIterator< TImage >::Self = ImageRegionIterator

Standard class type aliases.

Definition at line 84 of file itkImageRegionIterator.h.

◆ SizeType

template<typename TImage>
using itk::ImageConstIterator< TImage >::SizeType

Size type alias support

Definition at line 129 of file itkImageConstIterator.h.

◆ Superclass

template<typename TImage>
using itk::ImageRegionIterator< TImage >::Superclass = ImageRegionConstIterator<TImage>

Definition at line 85 of file itkImageRegionIterator.h.

Constructor & Destructor Documentation

◆ ImageRegionIterator() [1/4]

template<typename TImage>
itk::ImageRegionIterator< TImage >::ImageRegionIterator ( )
default

Default constructor. Needed since we provide a cast constructor.

◆ ImageRegionIterator() [2/4]

template<typename TImage>
itk::ImageRegionIterator< TImage >::ImageRegionIterator ( ImageType * ptr,
const RegionType & region )

Constructor establishes an iterator to walk a particular image and a particular region of that image. Initializes the iterator at the begin of the region.

◆ ImageRegionIterator() [3/4]

template<typename TImage>
itk::ImageRegionIterator< TImage >::ImageRegionIterator ( const ImageIterator< TImage > & it)

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

◆ ImageRegionIterator() [4/4]

template<typename TImage>
itk::ImageRegionIterator< TImage >::ImageRegionIterator ( const ImageRegionConstIterator< TImage > & it)
protected

the construction from a const iterator is declared protected in order to enforce const correctness.

Member Function Documentation

◆ operator=()

template<typename TImage>
Self & itk::ImageRegionIterator< TImage >::operator= ( const ImageRegionConstIterator< TImage > & it)
protected

the construction from a const iterator is declared protected in order to enforce const correctness.

◆ Set()

◆ Value()

template<typename TImage>
PixelType & itk::ImageRegionIterator< TImage >::Value ( )
inline

Return a reference to the pixel This method will provide the fastest access to pixel data, but it will NOT support ImageAdaptors.

Definition at line 125 of file itkImageRegionIterator.h.

Referenced by itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType, TOutputImageType >::SetOutputPixel().


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