sinの描画
enundou.java
import java.applet.*;
import java.awt.*;
public class enundou extends Applet implements Runnable{
Thread th;
double x,y;
int d=5;
double t;
public void init(){
}
public void start(){
if(th==null){
th=new Thread(this);
}
th.start();
}
public void run(){
double omega,a,tt,aa;
int dt;
t=0;
dt=50;
a = 50.0;
tt=2.0;
while(th!=null){
omega=2*Math.PI/tt;
aa=a*t/2;
double b=(aa>=getWidth())?0:1;
/* x=getWidth()*(1-b)+b*a*t/2+(b-1)*(a*t/2-getWidth());*/
x=(1-b)*(2*getWidth()-aa)+(b*aa);
y=-a*Math.sin(omega*t)+getHeight()/2.0;
repaint();
t=t+dt/1000.0;
try{
Thread.sleep(dt);
}
catch(InterruptedException ex){
}
}
}
public void paint(Graphics g) {
// TODO 自動生成されたメソッド・スタブ
g.drawRect(0, 0, getWidth()-1, getHeight()-1);
g.setColor(Color.red);
g.fillOval((int)x, (int)y, d, d);
g.setColor(Color.black);
g.drawString("Hello Java!!!", getWidth()/2-20, 10);
}
public void update(Graphics g) {
paint(g);
}
public void stop(){
th=null;
}
}