javaのプログラミングについての質問です
javaのプログラミングについての質問です
任意の複数の数値を入れたファイルを読み取りその数値の場所から次の数値まで線を描画するプログラミングを作成しました
ここから発展問題としてタートルグラフィックスを
描画するプログラムを50歩進み右に90度曲がることを4度繰り返すという条件で作ってみようと思ったのですが上手くコンパイルが通りません
取りあえず分かっているのは
(100.cos45,100.sin45)で90°曲がる
repeat 4,forward 50right 90 end 0
だけです
もし分かる方がいらっしゃいましたらご返答宜しくお願いします
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class mondai{
int x[] = new int[100];
int y[] = new int[100];
int len = 0;
public static void main(String[] args){
new mondai(args[0]);
}
public mondai(String mondai2){
ReadFile rf = new ReadFile(mondai2);
String line;
while( (line = rf.gets()) != null) {
String[] date = line.split(",");
if(date.length == 2){
x[len] = Integer.parseInt(date[0]);
System.out.println(date[0]);
y[len]= Integer.parseInt(date[1]);
System.out.println(date[1]);
len++;
}
}
Frame f = new Frame();
f.setTitle("Line");
f.setSize(640,480);
f.setLayout(null);
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}});
DrawArea da = new DrawArea();
da.setBounds(0,0,640,480);
f.add(da);
f.setVisible(true);
}
private class DrawArea extends Canvas{
public void paint(Graphics g){
for(int i=0;i<len-1;i++)
g.drawLine(x[i],y[i],x[i+1],y[i+1]);
}
}
private class ReadFile{
FileInputStream fis;
InputStreamReader isr;
BufferedReader br;
public ReadFile(String filename){
try{
fis = new FileInputStream(filename);
isr = new InputStreamReader(fis);
br = new BufferedReader(isr);
}catch(Exception e){
e.printStackTrace();
}
}
public String gets(){
String line = "";
try{
line = br.readLine();
}catch(Exception e){
e.printStackTrace();
}
return line;
}
}
}