グラフィクス・ライブラリであるSwingやAWTでは, 図を描画するメソッドは paint と決められており,
public void paint(java.awt.Graphics g) { ... }
として,paintメソッドをオーバーライドする必要がある. paintに描画の手順を記述する.(名前が決まっている)
MyPanelのスーパークラスであるJPanelはGraphicsクラスのオブジェクトを持っ ている. それを paint メソッドの引数として受け取り, 描画の手順を記述する.
ここでは,楕円を描画するメソッド
void drawOval(int x, int y, int dx, int dy)
int x | 描画する楕円に外接する長方形の左端からの座標 (単位はセル) |
int y | 同じく外接長方形の上からの座標 |
int dx | 楕円の横幅 |
int dy | 楕円の縦方向の幅 |
例: 点(100, 50)を左上隅とし,横200,縦150ピクセルの長方形に 内接する楕円を描く
g.drawOval(100, 50, 200, 150);
作成するプログラムでは パネルの中心(xCenter, yCenter)に半径 radius 円を描くことにする.
中心座標と半径を用いて,左上隅の座標を指定し,
横幅,縦幅がともに radius の楕円を描くことで半径 radius の円を
描くことができる.