public final class TransfertRectIter extends Object implements WritableRectIter
get
methods read values from the
source image specified at creation time. All set
methods write values to the destination image specified at creation time, which may or may not be the same than the source image. This is
different than the usual WritableRectIter
contract, which read and write values in the
same image. This TransfertRectIter
is convenient for the implementation of some image
operations.Modifier and Type | Method and Description |
---|---|
static WritableRectIter |
create(RectIter src,
WritableRectIter dst)
Creates a
WritableRectIter for the specified source and destination iterator. |
boolean |
finishedBands()
Returns
true if the max band in the image has been exceeded. |
boolean |
finishedLines()
Returns
true if the bottom row of the bounding rectangle has been passed. |
boolean |
finishedPixels()
Returns
true if the right edge of the bounding rectangle has been passed. |
double[] |
getPixel(double[] array)
Returns the samples of the current pixel from the image in an array of double.
|
float[] |
getPixel(float[] array)
Returns the samples of the current pixel from the image in an array of float.
|
int[] |
getPixel(int[] array)
Returns the samples of the current pixel from the image in an array of int.
|
int |
getSample()
Returns the current sample as an integer.
|
int |
getSample(int b)
Returns the specified sample of the current pixel as an integer.
|
double |
getSampleDouble()
Returns the current sample as a double.
|
double |
getSampleDouble(int b)
Returns the specified sample of the current pixel as a double.
|
float |
getSampleFloat()
Returns the current sample as a float.
|
float |
getSampleFloat(int b)
Returns the specified sample of the current pixel as a float.
|
void |
jumpLines(int num)
Jumps downward num lines from the current position.
|
void |
jumpPixels(int num)
Jumps rightward num pixels from the current position.
|
void |
nextBand()
Sets the iterator to the next band in the image.
|
boolean |
nextBandDone()
Sets the iterator to the next band in the image, and returns
true if the max band has
been exceeded. |
void |
nextLine()
Sets the iterator to the next line of the image.
|
boolean |
nextLineDone()
Sets the iterator to the next line in the image, and returns
true if the bottom row
of the bounding rectangle has been passed. |
void |
nextPixel()
Sets the iterator to the next pixel in image (that is, move rightward).
|
boolean |
nextPixelDone()
Sets the iterator to the next pixel in the image (that is, move rightward).
|
void |
setPixel(double[] array)
Sets all samples of the current pixel to a set of double values.
|
void |
setPixel(float[] array)
Sets all samples of the current pixel to a set of float values.
|
void |
setPixel(int[] array)
Sets all samples of the current pixel to a set of int values.
|
void |
setSample(double s)
Sets the current sample to a double value.
|
void |
setSample(float s)
Sets the current sample to a float value.
|
void |
setSample(int s)
Sets the current sample to an integral value.
|
void |
setSample(int b,
double s)
Sets the specified sample of the current pixel to a double value.
|
void |
setSample(int b,
float s)
Sets the specified sample of the current pixel to a float value.
|
void |
setSample(int b,
int s)
Sets the specified sample of the current pixel to an integral value.
|
void |
startBands()
Sets the iterator to the first band of the image.
|
void |
startLines()
Sets the iterator to the first line of its bounding rectangle.
|
void |
startPixels()
Sets the iterator to the leftmost pixel of its bounding rectangle.
|
public static WritableRectIter create(RectIter src, WritableRectIter dst)
WritableRectIter
for the specified source and destination iterator. The two
iterators must iterate over a rectangle of the same size, otherwise a RasterFormatException
may be thrown during the iteration.src
- The source iterator.dst
- The destination iterator.src
and write sample to dst
. If
src == dst
, then the destination iterator itself is returned.public void startLines()
startLines
in interface RectIter
public void startPixels()
startPixels
in interface RectIter
public void startBands()
startBands
in interface RectIter
public void jumpLines(int num)
jumpLines
in interface RectIter
public void jumpPixels(int num)
jumpPixels
in interface RectIter
public void nextLine()
nextLine
in interface RectIter
public void nextPixel()
nextPixel
in interface RectIter
public void nextBand()
nextBand
in interface RectIter
public boolean nextLineDone()
true
if the bottom row
of the bounding rectangle has been passed.nextLineDone
in interface RectIter
public boolean nextPixelDone()
nextPixelDone
in interface RectIter
public boolean nextBandDone()
true
if the max band has
been exceeded.nextBandDone
in interface RectIter
public boolean finishedLines()
true
if the bottom row of the bounding rectangle has been passed.finishedLines
in interface RectIter
public boolean finishedPixels()
true
if the right edge of the bounding rectangle has been passed.finishedPixels
in interface RectIter
public boolean finishedBands()
true
if the max band in the image has been exceeded.finishedBands
in interface RectIter
public int[] getPixel(int[] array)
getPixel
in interface RectIter
public float[] getPixel(float[] array)
getPixel
in interface RectIter
public double[] getPixel(double[] array)
getPixel
in interface RectIter
public int getSample()
getSample
in interface RectIter
public int getSample(int b)
getSample
in interface RectIter
public float getSampleFloat()
getSampleFloat
in interface RectIter
public float getSampleFloat(int b)
getSampleFloat
in interface RectIter
public double getSampleDouble()
getSampleDouble
in interface RectIter
public double getSampleDouble(int b)
getSampleDouble
in interface RectIter
public void setPixel(int[] array)
setPixel
in interface WritableRectIter
public void setPixel(float[] array)
setPixel
in interface WritableRectIter
public void setPixel(double[] array)
setPixel
in interface WritableRectIter
public void setSample(int s)
setSample
in interface WritableRectIter
public void setSample(float s)
setSample
in interface WritableRectIter
public void setSample(double s)
setSample
in interface WritableRectIter
public void setSample(int b, int s)
setSample
in interface WritableRectIter
public void setSample(int b, float s)
setSample
in interface WritableRectIter
public void setSample(int b, double s)
setSample
in interface WritableRectIter
Copyright © 1996–2019 Geotools. All rights reserved.