|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.image.ConvolveOp
public class ConvolveOp
此类实现从源到目标的卷积。使用卷积核的卷积是一种通过输入像素来计算输出像素的空间运算,方法是将核与输入像素邻域相乘。这种运算使得直接邻域可按核数学指定的方式影响输出像素。
此类可对颜色分量预乘 alpha 分量的 BufferedImage 数据进行运算。如果源 BufferedImage 有 alpha 分量,并且颜色分量没有预乘 alpha 分量,则在卷积运算前要先预乘该数据。如果 Destination 有未进行预乘的颜色分量,则在存入到 Destination 之前除以 alpha 分量(如果 alpha 为 0,则颜色分量被设置为 0)。如果 Destination 没有 alpha 分量,则在颜色分量除以 alpha 分量之从后即丢弃 alpha 分量。
Raster 被看作是没有 alpha 通道的。如果不希望对 BufferedImage 中的 alpha 通道进行上述处理,则可以通过获取源 BufferedImage 的 Raster 和使用与 Raster 一起工作的此类的 filter 方法予以避免。
如果 RenderingHints 对象是在构造方法中指定的,则在需要进行颜色变换时使用颜色呈现提示和抖动提示。
注意,Source 和 Destination 可能不是同一个对象。
字段摘要 | |
---|---|
static int |
EDGE_NO_OP
将位于源图像边缘的像素复制为目标中相应的像素,不加修改。 |
static int |
EDGE_ZERO_FILL
位于目标图像边缘的像素被设置为 0。 |
构造方法摘要 | |
---|---|
ConvolveOp(Kernel kernel)
构造给定了 Kernel 的 ConvolveOp。 |
|
ConvolveOp(Kernel kernel,
int edgeCondition,
RenderingHints hints)
构造给定 Kernel、边缘条件和 RenderingHint 对象(可以为 null)的 ConvolveOp。 |
方法摘要 | |
---|---|
BufferedImage |
createCompatibleDestImage(BufferedImage src,
ColorModel destCM)
创建具有正确 band 大小和数量的归零目标图像。 |
WritableRaster |
createCompatibleDestRaster(Raster src)
创建给定源且具有正确 band 大小和数量的归零目标 Raster。 |
BufferedImage |
filter(BufferedImage src,
BufferedImage dst)
对 BufferedImage 执行卷积运算。 |
WritableRaster |
filter(Raster src,
WritableRaster dst)
对 Raster 执行卷积运算。 |
Rectangle2D |
getBounds2D(BufferedImage src)
返回已过滤目标图像的边界框。 |
Rectangle2D |
getBounds2D(Raster src)
返回已过滤目标 Raster 的边界框。 |
int |
getEdgeCondition()
返回边缘条件。 |
Kernel |
getKernel()
返回 Kernel。 |
Point2D |
getPoint2D(Point2D srcPt,
Point2D dstPt)
返回源中给定点的目标点位置。 |
RenderingHints |
getRenderingHints()
返回此 op 的呈现提示。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final int EDGE_ZERO_FILL
public static final int EDGE_NO_OP
构造方法详细信息 |
---|
public ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
kernel
- 指定的 Kernel
edgeCondition
- 指定的边缘条件hints
- 指定的 RenderingHints
对象Kernel
,
EDGE_NO_OP
,
EDGE_ZERO_FILL
,
RenderingHints
public ConvolveOp(Kernel kernel)
kernel
- 指定的 Kernel
Kernel
,
EDGE_ZERO_FILL
方法详细信息 |
---|
public int getEdgeCondition()
ConvolveOp
的边缘条件。EDGE_NO_OP
,
EDGE_ZERO_FILL
public final Kernel getKernel()
ConvolveOp
的 Kernel
。public final BufferedImage filter(BufferedImage src, BufferedImage dst)
BufferedImageOp
中的 filter
src
- 要过滤的源 BufferedImage
dst
- 已过滤的 src
的目标 BufferedImage
BufferedImage
NullPointerException
- 如果 src
为 null
IllegalArgumentException
- 如果 src
等于 dst
ImagingOpException
- 如果 src
不能过滤public final WritableRaster filter(Raster src, WritableRaster dst)
src
- 要过滤的源 Raster
dst
- 已过滤的 src
的目标 WritableRaster
WritableRaster
NullPointerException
- 如果 src
为 null
ImagingOpException
- 如果 src
和 dst
没有相同数量的 band
ImagingOpException
- 如果 src
不能过滤
IllegalArgumentException
- 如果 src
等于 dst
public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
BufferedImageOp
中的 createCompatibleDestImage
src
- 进行过滤操作的源图像。destCM
- 目标的 ColorModel。可以为 null。
BufferedImage
。public WritableRaster createCompatibleDestRaster(Raster src)
RasterOp
中的 createCompatibleDestRaster
src
- 源 Raster
src
兼容的 WritableRaster
public final Rectangle2D getBounds2D(BufferedImage src)
BufferedImageOp
中的 getBounds2D
src
- 要过滤的 BufferedImage
Rectangle2D
。public final Rectangle2D getBounds2D(Raster src)
RasterOp
中的 getBounds2D
src
- 源 Raster
Rectangle2D
,它是从过滤操作得到的 Raster
的边界框。public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
BufferedImageOp
中的 getPoint2D
RasterOp
中的 getPoint2D
srcPt
- 表示源图像中点的 Point2D
dstPt
- 用于存储结果的 Point2D
Point2D
。public final RenderingHints getRenderingHints()
BufferedImageOp
中的 getRenderingHints
RasterOp
中的 getRenderingHints
BufferedImageOp
的 RenderingHints
对象。如果没有设置提示,则返回 null。
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。