|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.awt.image
类 AffineTransformOp
java.lang.Object java.awt.image.AffineTransformOp
- 所有已实现的接口:
- BufferedImageOp, RasterOp
-
public class AffineTransformOp
- extends Object
- implements BufferedImageOp, RasterOp
此类使用仿射转换来执行从源图像或 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 |
字段详细信息 |
---|
TYPE_NEAREST_NEIGHBOR
public static final int TYPE_NEAREST_NEIGHBOR
-
最接近的邻插值类型。
- 另请参见:
- 常量字段值
TYPE_BILINEAR
public static final int TYPE_BILINEAR
-
双线性的插值类型。
- 另请参见:
- 常量字段值
TYPE_BICUBIC
public static final int TYPE_BICUBIC
-
双三次插值类型。
- 另请参见:
- 常量字段值
构造方法详细信息 |
---|
AffineTransformOp
public AffineTransformOp(AffineTransform xform, RenderingHints hints)
-
根据仿射转换构造
AffineTransformOp
。插值类型从RenderingHints
对象确定。如果定义了插值提示,则要使用该提示。否则,如果定义了呈现的质量提示,则从其值确定插值类型。如果没有指定提示(hints
为 null),则插值类型为TYPE_NEAREST_NEIGHBOR
。- 参数:
-
xform
- 该操作要使用的AffineTransform
。 -
hints
- 用于指定该操作插值类型的RenderingHints
对象。 - 抛出:
-
ImagingOpException
- 如果转换是不可逆的。 - 另请参见:
-
RenderingHints.KEY_INTERPOLATION
,RenderingHints.KEY_RENDERING
AffineTransformOp
public AffineTransformOp(AffineTransform xform, int interpolationType)
-
根据仿射转换和插值类型构造一个
AffineTransformOp
。- 参数:
-
xform
- 该操作要使用的AffineTransform
。 -
interpolationType
- 由此类定义的整数插值类型常量之一:TYPE_NEAREST_NEIGHBOR
、TYPE_BILINEAR
、TYPE_BICUBIC
。 - 抛出:
-
ImagingOpException
- 如果转换是不可逆的。
方法详细信息 |
---|
getInterpolationType
public final int getInterpolationType()
- 返回由此 op 使用的插值类型。
-
-
- 返回:
- 插值类型。
- 另请参见:
-
TYPE_NEAREST_NEIGHBOR
,TYPE_BILINEAR
,TYPE_BICUBIC
filter
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 格式、图像处理操作或任何其他不受支持的操作引起的数据处理错误,导致该图像无法转换。
filter
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
中的该位置绘制过滤后的图像。 -
- 参数:
-
src
- 要转换的Raster
。 -
dst
- 要在其中存储转换结果的Raster
。 - 返回:
-
转换后的
Raster
。 - 抛出:
-
ImagingOpException
- 如果由于无效的图像格式、tile 格式、图像处理操作或任何其他不受支持的操作引起的数据处理错误,导致该 raster 无法转换。
getBounds2D
public final Rectangle2D getBounds2D(BufferedImage src)
- 返回转换后的目标图像的边界框。返回的矩形是转换后的点的实际边界框。返回矩形的左上角坐标不一定是 (0, 0)。
-
- 指定者:
-
接口
BufferedImageOp
中的getBounds2D
-
- 参数:
-
src
- 要转换的BufferedImage
。 - 返回:
-
表示目标图像边界框的
Rectangle2D
。