- java.lang.Object
-
- java.awt.image.BandCombineOp
-
- 实现的所有接口
-
RasterOp
public class BandCombineOp extends Object implements RasterOp
该类使用指定的矩阵在Raster
中执行波段的任意线性组合。矩阵的宽度必须等于源
Raster
的波段数,可选择加1。 如果矩阵中的列多于带的数量,则在表示像素的带样本的矢量的末尾存在隐含的1。 矩阵的高度必须等于目标中的波段数。例如,3-banded
Raster
可能会对每个像素应用以下转换,以便反转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 ]
请注意,源和目标可以是同一个对象。
-
-
构造方法摘要
构造方法 构造器 描述 BandCombineOp(float[][] matrix, RenderingHints hints)
使用指定的矩阵构造BandCombineOp
。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 WritableRaster
createCompatibleDestRaster(Raster src)
使用正确的大小和波段数创建归零目标Raster
。WritableRaster
filter(Raster src, WritableRaster dst)
使用构造函数中指定的矩阵转换Raster
。Rectangle2D
getBounds2D(Raster src)
返回已转换目标的边界框。float[][]
getMatrix()
返回线性组合矩阵的副本。Point2D
getPoint2D(Point2D srcPt, Point2D dstPt)
给定源Raster
中的一个点,返回相应目标点的位置。RenderingHints
getRenderingHints()
返回此操作的呈现提示。
-
-
-
构造方法详细信息
-
BandCombineOp
public BandCombineOp(float[][] matrix, RenderingHints hints)
使用指定的矩阵构造BandCombineOp
。 矩阵的宽度必须等于源Raster
的波段数,可选择加1。 如果矩阵中的列多于带的数量,则在表示像素的带样本的矢量的末尾存在隐含的1。 矩阵的高度必须等于目标中的波段数。第一个下标是行索引,第二个是列索引。 此操作不使用当前定义的渲染提示;
RenderingHints
参数可以为null。- 参数
-
matrix
- 用于波段组合操作的矩阵。 -
hints
- 此操作的RenderingHints
对象。 目前未使用,因此可以为null。
-
-
方法详细信息
-
getMatrix
public final float[][] getMatrix()
返回线性组合矩阵的副本。- 结果
- 与该频带相关联的矩阵组合操作。
-
filter
public WritableRaster filter(Raster src, WritableRaster dst)
使用构造函数中指定的矩阵转换Raster
。 如果源或目标中的波段数与矩阵不兼容,则可能抛出IllegalArgumentException
。 有关详细信息,请参阅课程注释。如果目标为空,则将创建具有等于矩阵中行数的多个带。 如果操作导致数据溢出,则不会引发异常。
- Specified by:
-
filter
,界面RasterOp
- 参数
-
src
- 要过滤的Raster
。 -
dst
-Raster
,用于存储过滤操作的结果。 - 结果
-
过滤后的
Raster
。 - 异常
-
IllegalArgumentException
- 如果源或目标中的波段数与矩阵不兼容。
-
getBounds2D
public final Rectangle2D getBounds2D(Raster src)
返回已转换目标的边界框。 由于这不是几何操作,因此源和目标的边界框是相同的。 如果源中的波段数与矩阵不兼容,则可能抛出IllegalArgumentException
。 有关详细信息,请参阅课程注释。- Specified by:
-
getBounds2D
在界面RasterOp
- 参数
-
src
- 要过滤的Raster
。 - 结果
-
Rectangle2D
表示目标图像的边界框。 - 异常
-
IllegalArgumentException
- 如果源中的波段数与矩阵不兼容。
-
createCompatibleDestRaster
public WritableRaster createCompatibleDestRaster(Raster src)
创建具有正确大小和波段数的归零目标Raster
。 如果源中的波段数与矩阵不兼容,则可能抛出IllegalArgumentException
。 有关详细信息,请参阅课程注释。- Specified by:
-
createCompatibleDestRaster
在接口RasterOp
- 参数
-
src
- 要过滤的Raster
。 - 结果
-
归零目的地
Raster
。
-
getPoint2D
public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
给定源Raster
中的一个点,返回相应目标点的位置。 如果指定了dstPt
,则它用于保存返回值。 由于这不是几何操作,因此返回的点与指定的srcPt
相同。- Specified by:
-
getPoint2D
在界面RasterOp
- 参数
-
srcPt
-Point2D
表示源中的点Raster
-
dstPt
- 用于存储结果的Point2D
。 - 结果
-
目标图像中的
Point2D
,对应于源图像中的指定点。
-
getRenderingHints
public final RenderingHints getRenderingHints()
返回此操作的呈现提示。- Specified by:
-
getRenderingHints
在界面RasterOp
- 结果
-
The
RenderingHints
object associated with this operation. Returns null if no hints have been set.
-
-