|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.image.AffineTransformOp
public class AffineTransformOp
此类使用仿射转换来执行从源图像或 Raster
中 2D 坐标到目标图像或 Raster
中 2D 坐标的线性映射。所使用的插值类型由构造方法通过一个 RenderingHints
对象或通过此类中定义的整数插值类型之一来指定。
如果在构造方法中指定了 RenderingHints
对象,则使用插值提示和呈现的质量提示为此操作设置插值类型。要求进行颜色转换时,可以使用颜色呈现提示和抖动提示。
注意,务必要满足以下约束:
Raster
对象,源图像中的 band 数必须等于目标图像中的 band 数。
AffineTransform
,
BufferedImageFilter
,
RenderingHints.KEY_INTERPOLATION
,
RenderingHints.KEY_RENDERING
,
RenderingHints.KEY_COLOR_RENDERING
,
RenderingHints.KEY_DITHERING
字段摘要 | |
---|---|
static int |
TYPE_BICUBIC
双三次插值类型。 |
static int |
TYPE_BILINEAR
双线性的插值类型。 |
static int |
TYPE_NEAREST_NEIGHBOR
最接近的邻插值类型。 |
构造方法摘要 | |
---|---|
AffineTransformOp(AffineTransform xform,
int interpolationType)
根据仿射转换和插值类型构造一个 AffineTransformOp 。 |
|
AffineTransformOp(AffineTransform xform,
RenderingHints hints)
根据仿射转换构造 AffineTransformOp 。 |
方法摘要 | |
---|---|
BufferedImage |
createCompatibleDestImage(BufferedImage src,
ColorModel destCM)
创建一个具有正确大小和 band 数的经过检查的目标图像。 |
WritableRaster |
createCompatibleDestRaster(Raster src)
创建一个具有正确大小和 band 数的经过检查的目标 Raster 。 |
BufferedImage |
filter(BufferedImage src,
BufferedImage dst)
转换源 BufferedImage 并将结果存储在目标 BufferedImage 中。 |
WritableRaster |
filter(Raster src,
WritableRaster dst)
转换源 Raster 并将结果存储在目标 Raster 中。 |
Rectangle2D |
getBounds2D(BufferedImage src)
返回转换后的目标图像的边界框。 |
Rectangle2D |
getBounds2D(Raster src)
返回转换后的目标图像的边界框。 |
int |
getInterpolationType()
返回由此 op 使用的插值类型。 |
Point2D |
getPoint2D(Point2D srcPt,
Point2D dstPt)
返回与源图像中给定点对应的目标点的位置。 |
RenderingHints |
getRenderingHints()
返回此转换操作使用的呈现提示。 |
AffineTransform |
getTransform()
返回此转换操作使用的仿射转换。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final int TYPE_NEAREST_NEIGHBOR
public static final int TYPE_BILINEAR
public static final int TYPE_BICUBIC
构造方法详细信息 |
---|
public AffineTransformOp(AffineTransform xform, RenderingHints hints)
AffineTransformOp
。根据 RenderingHints
对象确定插值类型。如果定义了插值提示,则要使用该提示。否则,如果定义了呈现的质量提示,则根据其值确定插值类型。如果没有指定提示(hints
为 null),则插值类型为 TYPE_NEAREST_NEIGHBOR
。
xform
- 该操作要使用的 AffineTransform
。hints
- 用于指定该操作插值类型的 RenderingHints
对象。
ImagingOpException
- 如果转换是不可逆的。RenderingHints.KEY_INTERPOLATION
,
RenderingHints.KEY_RENDERING
public AffineTransformOp(AffineTransform xform, int interpolationType)
AffineTransformOp
。
xform
- 该操作要使用的 AffineTransform
。interpolationType
- 由此类定义的整数插值类型常量之一:TYPE_NEAREST_NEIGHBOR
、TYPE_BILINEAR
、TYPE_BICUBIC
。
ImagingOpException
- 如果转换是不可逆的。方法详细信息 |
---|
public final int getInterpolationType()
TYPE_NEAREST_NEIGHBOR
,
TYPE_BILINEAR
,
TYPE_BICUBIC
public final BufferedImage filter(BufferedImage src, BufferedImage dst)
BufferedImage
并将结果存储在目标 BufferedImage
中。如果两个图像的颜色模型不匹配,则将颜色模型转换成目标颜色模型。如果目标图像为 null,则使用源 ColorModel
创建 BufferedImage
。
由 getBounds2D(BufferedImage)
返回的矩形坐标不一定与由此方法返回的 BufferedImage
的坐标相同。如果矩形的左上角坐标为负,则不用绘制矩形的这一部分。如果矩形的左上角坐标为正,则在目标 BufferedImage
中的该位置绘制过滤后的图像。
如果源图像与目标图像相同,则抛出 IllegalArgumentException
。
BufferedImageOp
中的 filter
src
- 要转换的 BufferedImage
。dst
- 要在其中存储转换结果的 BufferedImage
。
BufferedImage
。
IllegalArgumentException
- 如果 src
和 dst
相同
ImagingOpException
- 如果由于无效的图像格式、tile 格式、图像处理操作或任何其他不受支持的操作引起的数据处理错误,导致该图像无法转换。public final WritableRaster filter(Raster src, WritableRaster dst)
Raster
并将结果存储在目标 Raster
中。此操作逐个 band 执行转换。
如果目标 Raster
为 null,则创建一个新的 Raster
。如果源 Raster
与目标 Raster
相同,或者源 Raster
中的 band 数不等于目标 Raster
中的 band 数,则可能抛出 IllegalArgumentException
。
由 getBounds2D(Raster)
返回的矩形坐标不一定与由此方法返回的 WritableRaster
的坐标相同。如果矩形的左上角坐标为负,则不用绘制矩形的这一部分。如果矩形的左上角坐标为正数,则在目标 Raster
中的该位置绘制过滤后的图像。
RasterOp
中的 filter
src
- 要转换的 Raster
。dst
- 要在其中存储转换结果的 Raster
。
Raster
。
ImagingOpException
- 如果由于无效的图像格式、tile 格式、图像处理操作或任何其他不受支持的操作引起的数据处理错误,导致该 raster 无法转换。public final Rectangle2D getBounds2D(BufferedImage src)
BufferedImageOp
中的 getBounds2D
src
- 要转换的 BufferedImage
。
Rectangle2D
。public final Rectangle2D getBounds2D(Raster src)
RasterOp
中的 getBounds2D
src
- 要转换的 Raster
。
Rectangle2D
。public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
RasterFormatException
。
如果 destCM
为 null,则使用合适的 ColorModel
;即使源 ColorModel
是不透明的,此 ColorModel
也可能具有一个 alpha 通道。
BufferedImageOp
中的 createCompatibleDestImage
src
- 要转换的 BufferedImage
。destCM
- 目标 ColorModel
。如果它为 null,则使用一个合适的 ColorModel
。
public WritableRaster createCompatibleDestRaster(Raster src)
Raster
。如果转换后的宽度和高度等于 0,则可能抛出 RasterFormatException
。
RasterOp
中的 createCompatibleDestRaster
src
- 要转换的 Raster
。
Raster
。public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
dstPt
,则使用它来保存返回值。
BufferedImageOp
中的 getPoint2D
RasterOp
中的 getPoint2D
srcPt
- 表示源点 Point2D
。dstPt
- 用于存储结果 Point2D
。
Point2D
。public final AffineTransform getTransform()
AffineTransform
。public final RenderingHints getRenderingHints()
BufferedImageOp
中的 getRenderingHints
RasterOp
中的 getRenderingHints
RenderingHints
对象。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。