[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

StridedImageIterator< PIXELTYPE > Class Template Reference
[Image Iterators]

Iterator to be used when pixels are to be skipped. More...

#include <vigra/imageiterator.hxx>

Inheritance diagram for StridedImageIterator< PIXELTYPE >:
ImageIteratorBase< StridedImageIterator< PIXELTYPE >, PIXELTYPE, PIXELTYPE &, PIXELTYPE *, StridedArrayTag >

List of all members.

Public Types

typedef Base::difference_type difference_type
typedef Base::pointer pointer

Public Member Functions

 StridedImageIterator ()
 StridedImageIterator (pointer base, int ystride, int xskip, int yskip)

Detailed Description

template<class PIXELTYPE>
class vigra::StridedImageIterator< PIXELTYPE >

Iterator to be used when pixels are to be skipped.

This iterator can be used when some pixels shall be automatically skipped, for example if an image is to be sub-sampled: instead of advancing to the next pixel, ++iterator.x jumps to the pixel at a horizontal offset of xskip. Likewise with yskip in vertical direction. Most functions and local types are inherited from ImageIteratorBase.

Usage:

    BImage img(w,h);
    ...
    int xskip = 2, yskip = 2;
    int wskip = w / xskip + 1, hskip = h / yskip + 1;

    StridedImageIterator<BImage::value_type> upperLeft(&img(0,0), w, xskip, yskip);
    StridedImageIterator<BImage::value_type> lowerRight = upperLeft + Diff2D(wskip, hskip);

    // now navigation with upperLeft and lowerRight lets the image appear to have half
    // the original resolution in either dimension

#include <vigra/imageiterator.hxx>

Namespace: vigra


Member Typedef Documentation

the iterator's pointer type (return type of iter.operator->())

Reimplemented from ImageIteratorBase< StridedImageIterator< PIXELTYPE >, PIXELTYPE, PIXELTYPE &, PIXELTYPE *, StridedArrayTag >.

the iterator's difference type (argument type of iter[diff])

Reimplemented from ImageIteratorBase< StridedImageIterator< PIXELTYPE >, PIXELTYPE, PIXELTYPE &, PIXELTYPE *, StridedArrayTag >.


Constructor & Destructor Documentation

StridedImageIterator ( pointer  base,
int  ystride,
int  xskip,
int  yskip 
)

Construct from raw memory with a vertical stride of ystride, jumping by xskip horizontally and yskip vertically. ystride must be the physical width (row length) of the image.

Default constructor


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

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
vigra 1.8.0 (20 Sep 2011)