Graphics2D クラス
- [内容]
- Graphics クラスを拡張して,幾何学的図形,座標変換,カラー管理,および,テキスト配置について高度な制御を行います.
- [主なメソッド]
- public abstract void draw(Shape s)
- Shape の輪郭をストロークで描画
- public void draw3DRect(int x, int y, int width, int height, boolean raised)
- 指定された矩形の輪郭を 3D で強調表示して描画.raisedでは, 矩形が表面から浮き出たように見えるか,表面に彫り込まれたように見えるかを指定.
- public abstract void drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
- BufferedImageOp でフィルタ処理される BufferedImage を描画.なお,BufferedImageOp インタフェースは,BufferedImage オブジェクトに対して実行される単一入力操作および単一出力操作を記述するものであり,AffineTransformOp,ConvolveOp,ColorConvertOp,RescaleOp,および,LookupOp によって実装されている.
- public abstract boolean drawImage(Image img, AffineTransform xform, ImageObserver obs)
- イメージ空間からユーザー空間への変換( AffineTransform )を適用してから Image を描画.ImageObserver は,Image オブジェクトが生成されるとき,イメージに関する情報を受け取るためのインタフェースであり,イメージに関連する多くのクラスに実装されている.
- public abstract void drawString ( AttributedCharacterIterator iterator, float x, float y )
- public abstract void drawString ( AttributedCharacterIterator iterator, int x, int y )
- 指定された反復子によってテキストを描き,TextAttribute クラスの仕様に基づいて属性を適用.TextAttribute クラスは,テキストの描画に使用する属性キーおよび属性値を定義する.また,AttributedCharacterIterator は,テキストとそのテキストに関連する属性情報を,どちらも繰り返し処理できるようにするためのインタフェースである.これらは,属性付きのテキストを扱いたいような場合に使用される(プログラム例参照).
- public abstract void drawString(String str, float x, float y)
- public abstract void drawString(String str, int x, int y)
- 特定の String により指定されたテキストを描画
- public abstract void fill(Shape s)
- Shape の内部を塗りつぶす
- public void fill3DRect(int x, int y, int width, int height, boolean raised)
- 3D で強調表示された矩形を描画
- public abstract boolean hit(Rectangle rect, Shape s, boolean onStroke)
- 指定された Shape が指定された Rectangle と交差するかどうかを判定する.onStroke が false の場合,指定された Shape の内部が指定された Rectangle と交差するかどうかを調べ,true の場合は,指定された Shape の輪郭の Stroke が指定された Rectangle と交差するかどうかを調べる.
- public abstract void rotate(double theta)
- 現在の Graphics2D Transform を回転変換と連結
- public abstract void rotate(double theta, double x, double y)
- 現在の Graphics2D Transform を移動後の回転変換と連結
- public abstract void scale(double sx, double sy)
- 現在の Graphics2D Transform をスケーリング変換と連結
- public abstract void setPaint(Paint paint)
- Graphics2D コンテキストに Paint 属性を設定.Paint は,カラーパターンの生成方法を定義するインタフェースである.
- public abstract void setStroke(Stroke s)
- Graphics2D コンテキストの Stroke を設定.Stroke インタフェースにより,指定された 装飾された輪郭を表す Shape を取得できる.
- public abstract void setTransform(AffineTransform Tx)
- Graphics2D コンテキストで Transform を上書する.このメソッドは新しい座標変換を既存の変換上で適用する目的では使用しないこと.座標変換を追加するためには,transform,rotate,scale,または,shear メソッドを使用すること.
- public abstract void shear(double shx, double shy)
- 現在の Graphics2D Transform をシャーリング変換と連結
- public abstract void transform(AffineTransform Tx)
- AffineTransform オブジェクトをこの Graphics2D での Transform を使って,後指定優先適用という規則に従って変換
- public abstract void translate(double tx, double ty)
- 現在の Graphics2D Transform を移動変換と連結
- public abstract void translate(int x, int y)
- Graphics2D コンテキストの原点を、現在の座標系の点 (x, y) に移動
- [使用例]
- 「プログラム」は,Graphics2D クラスのメソッド setStroke,draw,setPaint,fill,transform,translate,rotate,scale,drawSring 等の使用例です.

- 「プログラム」は,Graphics2D クラスのメソッド drawImage 等の使用例です.
- 「プログラム」は,Graphics2D クラスのメソッド hit 等の使用例です.
- [参照]
- RescaleOp, LookupOp, ColorConvertOp, ConvolveOp, AffineTransform, AffineTransformOp, BufferedImage, PixelGrabber, MemoryImageSource, Shape, Graphics