All Packages Class Hierarchy This Package Previous Next Index
Class java.awt.image.BandCombineOp
java.lang.Object
|
+----java.awt.image.BandCombineOp
- public class BandCombineOp
- extends Object
- implements RasterOp
This class performs an arbitrary linear combination of bands
in a Raster, using a specified matrix.
For operations with a Raster, the width of the matrix must be equal to
the number of bands, 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 pixel vector. 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.
BandCombineOp(float[][])
- This constructs a BandCombineOp with the specified matrix.
createCompatibleDestRaster(Raster)
- Creates an empty destination Raster with the correct size and
number of bands.
filter(Raster, WritableRaster)
- Transforms the Raster using the matrix in the constructor.
getDestBounds(BufferedImage)
- Returns the bounding box of the transformed destination.
getDestBounds(Raster)
- Returns the bounding box of the transformed destination.
getDestPoint(Point2D, Point2D)
- Returns the location of the destination point given a
point in the source image.
getMatrix()
- Returns the matrix.
BandCombineOp
public BandCombineOp(float[][] matrix)
- This constructs a BandCombineOp with the specified matrix.
See the class comments for restrictions on the size of the
matrix. The first subscript is the row index and the second
is the column index.
getMatrix
public float[][] getMatrix()
- Returns the matrix.
filter
public WritableRaster filter(Raster src,
WritableRaster dst)
- Transforms the Raster using the matrix in the constructor.
The 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 will be thrown
if the operation causes a data overflow.
getDestBounds
public Rectangle2D getDestBounds(BufferedImage src)
- Returns the bounding box of the transformed destination. Since
this is not a geometric operation, the bounding box does not
change.
The IllegalArgumentException may be thrown if the number of
components in the source is incompatible with the matrix. See
the class comments for more details.
getDestBounds
public Rectangle2D getDestBounds(Raster src)
- Returns the bounding box of the transformed destination. Since
this is not a geometric operation, the bounding box does not
change.
The 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
public WritableRaster createCompatibleDestRaster(Raster src)
- Creates an empty destination Raster with the correct size and
number of bands.
The IllegalArgumentException may be thrown if the number of
bands in the source is incompatible with the matrix or if the
number of rows in the matrix is not equal to the number of
bands in the source image. See
the class comments for more details.
- Parameters:
- src - Source Raster for the filter operation
getDestPoint
public Point2D getDestPoint(Point2D srcPt,
Point2D dstPt)
- Returns the location of the destination point given a
point in the source image. If dstPt is non-null, it will
be used to hold the return value. Since this is not a geometric
operation, the srcPt will equal the dstPt.
All Packages Class Hierarchy This Package Previous Next Index
Submit a bug or feature