setPaintメソッドによる色属性の設定

広告

図形の線を描画したり塗りつぶしたりする為の色の指定方法について確認します。色を設定するには図形が描画される前にGraphics2Dクラスで用意されている「setPaint」メソッドを使って色に関する属性を設定します。

Graphics2D コンテキストに Paint 属性を設定します。このメソッドを
null Paint オブジェクトで呼び出しても、この Graphics2D の現在の Paint 
属性には影響しません。 

パラメータ:
  paint - 描画プロセスで色を生成するために使われる Paint、または null

引数にはPaintインターフェースを実装したクラスのオブジェクトを指定します。

Paintインターフェース

色の指定と言っても単純な色の指定の他にグラデーションパターンを指定したり画像を使って塗りつぶしを行ったりすることが可能です。それぞれPaintインターフェースを実装したクラスを使うことで実現できます。

Paintインターフェースを実装している主なクラスは以下の通りです。

クラス使用方法
Color単純色
GradientPaint線形グラデーションパターン
TexturePaintテクスチャーによる塗りつぶし
LinearGradientPaint線形グラデーションパターン
RadialGradientPaint円放射状グラデーションパターン

※「LinearGradientPaint」クラス及び「RadialGradientPaint」クラスはJ2SE1.6から導入されたクラスです。

例としてColorクラスを使った場合には具体的には次のように記述します。

public void paintComponent(Graphics g){
  Graphics2D g2 = (Graphics2D)g;

  g2.setPaint(Color.RED);
}

各クラスを使った指定方法は次のページ以降で確認していきます。

( Written by Tatsuo Ikura )