全ての例題と練習問題は、サポートページからダウンロードできます。ソース ファイルは、本書に掲載されているアプリケーションのものであり、このアプ レット自体のものではないことをご注意ください。
ソースファイル:
public class T21 {
public static void main(String[] args){
TurtleFrame f; // 変数 f の型宣言
f = new TurtleFrame(); // TurtleFrameを生成しfに代入
Turtle m = new Turtle(); // Turtle を生成し,m の初期値として代入
Turtle m1 = new Turtle(); // もう一つ生成し,m1 の初期値として代入
f.add(m); // f に m を追加
f.add(m1); // f に m1 を追加
m.fd(100); // m よ前に 100 進め
m.rt(90); // m よ右に 90 度回れ
m.fd(150); // m よ前に 150 進め
m1.rt(90); // m1 よ右に 90 度回れ
m1.fd(100); // m1 よ前に 150 進め
}
}
|
ソースファイル:
public class P46 {
public static void main(String[] args){
int n = 4, r = 7;
TurtleFrame f = new TurtleFrame();
Turtle m = new Turtle();
f.add(m);
for(int j = 0; j < r; j++){
for(int i = 0; i < n; i++){
m.fd(50);
m.rt(360/n);
}
m.rt(360/r);
}
}
}
|
ソースファイル:
public class HTurtle extends Turtle { //Turtle を拡張する
public void polygon(int n, int s){ //polygonメソッドの定義
int a = 360/n; //曲がる角度を求めておく
for(int j = 0; j < n; j++){ //n 回繰り返す
fd(s); //s 前に進んで
rt(a); //a 曲がるのを
}
}
public void house(int s){ //house メソッドの定義
polygon(4,s); //polygon を利用
fd(s); rt(30);
polygon(3,s);
lt(30); bk(s); //元の場所に戻しておく
}
}
public class T71 {
public static void main(String[] args){
TurtleFrame f = new TurtleFrame();
HTurtle m = new HTurtle();
int s = 50;
f.add(m);
m.house(s);
m.up(); m.lt(90); m.fd(50); m.rt(72); m.down();
m.polygon(5, s / 2);
m.up(); m.moveTo(100,100,0); m.down();
m.polygon(10, s / 5);
}
}
|
ソースファイル:
public class Tensen extends HTurtle{
int psize = 10;
public void fd(int s){
int k, len;
for(k = 0, len = 0 ; len + psize <= s; k++, len+= psize){
if(k % 2 == 0) down(); else up();
super.fd(psize);
}
down();
super.fd(s - len);
}
public static void main(String[] args){
TurtleFrame f = new TurtleFrame();
Tensen m = new Tensen();
f.add(m);
m.fd(100);
m.rt(90);
m.up(); m.fd(100); m.down();
m.lt(90);
m.polygon(5, 50);
}
}
|
ソースファイル:
import java.awt.Color;
public class MPolygon extends HTurtle implements Runnable{
int n, s;
MPolygon(int x, int y, int a, int n, int s){
super(x, y, a);
this.n = n; this.s = s;
}
public void run(){
polygon(n,s);
}
public static void main(String[] args){
TurtleFrame f = new TurtleFrame();
MPolygon m = new MPolygon(200,200,0, 10,50); f.add(m);
MPolygon m1 = new MPolygon(100,200,0, 5,50); f.add(m1);
m1.setColor(new Color(255,0,0));
m1.speed(5);
Thread t = new Thread(m);
Thread t1 = new Thread(m1);
t.start();
t1.start();
System.out.println("Main メソッドは終了する。");
}
}
|