| An iterator for traversing a read/write image in top-to-bottom,
left-to-right order. This will generally be the fastest style of
iterator, since it does not need to perform bounds checks against
the top or left edges of tiles.
The iterator is initialized with a particular rectangle as its
bounds, which it is illegal to exceed. This initialization takes
place in a factory method and is not a part of the iterator
interface itself. Once initialized, the iterator may be reset to
its initial state by means of the startLine(), startPixels(), and
startBands() methods. Its position may be advanced using the
nextLine(), jumpLines(), nextPixel(), jumpPixels(), and nextBand()
methods.
The iterator's position may be tested against the bounding
rectangle by means of the finishedLines(), finishedPixels(),
and finishedBands() methods, as well as the hybrid methods
nextLineDone(), nextPixelDone(), and nextBandDone().
The getSample(), getSampleFloat(), and getSampleDouble()
methods are provided to allow read-only access to the source data.
The various source bands may also be accessed in random fashion
using the variants that accept a band index. The getPixel() methods
allow retrieval of all bands simultaneously.
WritableRookIter adds the ability to alter the source pixel
values using the various setSample() and setPixel() methods.
An instance of WritableRectIter may be obtained by means
of the RectIterFactory.createWritable() method, which returns
an opaque object implementing this interface.
See Also: RectIter See Also: RectIterFactory |