Canvasでグラフィックを描こう (7/8)
作成:2009-12-29 21:45
更新:2009-12-29 21:45
更新:2009-12-29 21:45
■グラフィックをコピーする
この他、ちょっと面白い機能として、「指定したエリアのグラフィックを他の場所にコピーする」というのもやってみましょう。これは「copyArea」というメソッドを使います。これは、
[Grahics].copyArea( 横位置 , 縦位置 , 横幅 , 縦幅 , 横位置2 , 縦位置2 );
このような形で呼び出します。1~4引数で指定したエリアのグラフィックを、5~6引数で指定した場所にコピーして描きます。これを利用すると、また面白い効果を表すことができます。
下のリストの例は、左上に描いた円をコピーして描いた図形です。コピーする大きさを少しずつ変化させることで、こういう面白い図形も簡単に描けます。
[Grahics].copyArea( 横位置 , 縦位置 , 横幅 , 縦幅 , 横位置2 , 縦位置2 );
このような形で呼び出します。1~4引数で指定したエリアのグラフィックを、5~6引数で指定した場所にコピーして描きます。これを利用すると、また面白い効果を表すことができます。
下のリストの例は、左上に描いた円をコピーして描いた図形です。コピーする大きさを少しずつ変化させることで、こういう面白い図形も簡単に描けます。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※paintの修正 public void paint(Graphics g) { g.lock(); g.setColor(Graphics.getColorOfName(Graphics.LIME)); g.fillArc(0, 0, 50, 50, 0, 360); for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { g.copyArea(0, 0, 50 - i * 10, 50 - j * 10, i * 50, j * 50); } } g.unlock(true); }
※関連コンテンツ