|
JavaTM 2 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 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。