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; } }