目次> 第16章> 16.4 TOPUPPREVNEXT

16.4 AWTの描画例

AWTでは通常、 Canvas クラスを継承したクラスの update メソッド と paint メソッドをオーバーライドし、 オフスクリーン描画という方法を用います。

オフスクリーン描画というのは、画面の Graphics に直接描かずに、 イメージクラスのインスタンスに描画しておいて、書き終わったら ( あるいは、画面の再描画が必要になった時 ) このイメージを一気に画面に転送する という方法です。

20.4節のコッホ曲線や20.5節のシェルピンスキーのギャスケットを描画する部分は、 クラス MyCanvas にまとまっていますが、MyCanvas はオフスクリーン描画の例です。 MyCanvas の概略は以下のとおりです。

クラスの生成:
横・縦のサイズ、原点の座標をあたえて、描画領域を生成する。 描画の線の太さを太・細の2種類選択可能とする。コンポーネント内のy座標は、 通常は下向き(yが増えると下方向に移動する)であるが、通常の座標系のように 上向きにも描画できるようにする。

描画の仕方:
描画色は setColor で指定しておく。 draw で座標を指定して、点を次々に結んでゆく。 書き始めの点は、startat で指定する。

コッホ曲線を描くプログラムの構造は、以下の通りです。

MyCanvas.java

graph2.java


更新日:2002-12-05 TOPUPPREVNEXT