RasterOp
This class performs an arbitrary linear combination of the bands in a
Raster
, using a specified matrix.
The width of the matrix must be equal to the number of bands in the source Raster
, optionally plus one. If there is one more column in the matrix than the number of bands, there is an implied 1 at the end of the vector of band samples representing a pixel. The height of the matrix must be equal to the number of bands in the destination.
For example, a 3-banded Raster
might have the following transformation applied to each pixel in order to invert the second band of the Raster
.
[ 1.0 0.0 0.0 0.0 ] [ b1 ] [ 0.0 -1.0 0.0 255.0 ] x [ b2 ] [ 0.0 0.0 1.0 0.0 ] [ b3 ] [ 1 ]
Note that the source and destination can be the same object.
Constructors
Constructs a BandCombineOp
with the specified matrix.
Creates a zeroed destination Raster
with the correct size and number of bands.
Transforms the Raster
using the matrix specified in the constructor.
Returns the bounding box of the transformed destination.
final float[][]
Returns a copy of the linear combination matrix.
Returns the location of the corresponding destination point given a point in the source Raster
.
Returns the rendering hints for this operation.
Methods declared in class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructs a
BandCombineOp
with the specified matrix. The width of the matrix must be equal to the number of bands in the source
Raster
, optionally plus one. If there is one more column in the matrix than the number of bands, there is an implied 1 at the end of the vector of band samples representing a pixel. The height of the matrix must be equal to the number of bands in the destination.
The first subscript is the row index and the second is the column index. This operation uses none of the currently defined rendering hints; the RenderingHints
argument can be null.
matrix
- The matrix to use for the band combine operation.
hints
- The RenderingHints
object for this operation. Not currently used so it can be null.
public final float[][] getMatrix()
Returns a copy of the linear combination matrix.
Transforms the
Raster
using the matrix specified in the constructor. An
IllegalArgumentException
may be thrown if the number of bands in the source or destination is incompatible with the matrix. See the class comments for more details.
If the destination is null, it will be created with a number of bands equalling the number of rows in the matrix. No exception is thrown if the operation causes a data overflow.
filter
in interface RasterOp
src
- The Raster
to be filtered.
dst
- The Raster
in which to store the results of the filter operation.
Raster
.
IllegalArgumentException
- If the number of bands in the source or destination is incompatible with the matrix.
Returns the bounding box of the transformed destination. Since this is not a geometric operation, the bounding box is the same for the source and destination. An IllegalArgumentException
may be thrown if the number of bands in the source is incompatible with the matrix. See the class comments for more details.
getBounds2D
in interface RasterOp
src
- The Raster
to be filtered.
Rectangle2D
representing the destination image's bounding box.
IllegalArgumentException
- If the number of bands in the source is incompatible with the matrix.
Creates a zeroed destination Raster
with the correct size and number of bands. An IllegalArgumentException
may be thrown if the number of bands in the source is incompatible with the matrix. See the class comments for more details.
createCompatibleDestRaster
in interface RasterOp
src
- The Raster
to be filtered.
Raster
.
Returns the location of the corresponding destination point given a point in the source Raster
. If dstPt
is specified, it is used to hold the return value. Since this is not a geometric operation, the point returned is the same as the specified srcPt
.
getPoint2D
in interface RasterOp
srcPt
- The Point2D
that represents the point in the source Raster
dstPt
- The Point2D
in which to store the result.
Point2D
in the destination image that corresponds to the specified point in the source image.
Returns the rendering hints for this operation.
getRenderingHints
in interface RasterOp
RenderingHints
object associated with this operation. Returns null if no hints have been set.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4