Ex13_1



/*-------------
 Ex13_1.java
 図形の平行移動
 --------------*/
package jp_bunkyo;

import java.applet.*;
import java.awt.*;

public class Ex13_1 extends Applet {
	int x, y, width, height;	// 座標位置(x,y)と幅width,高さheight 用変数
	int red, grn, blu;			// 色(赤=red,緑=grn,青=blu)用変数
	Color col;					// 色クラス col

	public void init() {	// 初期化 initialize
		x = 10;
		y = 10;				// 初期座標 (x,y) 設定
		width = 10;			// 初期幅 width 設定
		height = 20;		// 初期高さ height 設定
	}

	public void paint(Graphics g) {
		int i;
		this.setSize(600, 200);		// サイズを指定

		for (i = 0; i < 17; i++) {	// 位置とサイズと色を変えながら長方形・楕円を繰り返し描く
			red = 255 - 11*i;		//【注】色が 0〜255 の範囲を超えるとエラー(描画されない)ので注意
			grn = 11*i;
			blu = 5*i;
			col = new Color(red, grn, blu);	// 設定した3色を混ぜて色を作るよ
			g.setColor(col);				// 作った色を描画に反映するよ
			g.drawRect(x + 5*i, y + 5*i, width + 10*i, height + 5*i);	// せまってくる矩形を描くよ

			col = new Color(grn, blu, red);	// 設定した3色の混ぜ方を変えて色を作るよ
			g.setColor(col);				// 作った色を描画に反映させるよ
			g.drawOval(550-x - i*i, y + 2*i, width + i*i-2*i, height + i*i-4*i);	// 加速する楕円を描くよ
		}
	}
}