All pastes #18062 Raw Edit

Someone

public text v1 · immutable
#18062 ·published 2005-07-19 15:23 UTC
rendered paste body
import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class TestAnim extends Panel {
  Timer t;
  int tick = 0;
  private class RepaintTimerTask extends TimerTask 
  {    
    TestAnim parent;

    RepaintTimerTask(TestAnim parent)
    { 
      this.parent = parent;
    }

    public void run()
    { 
      parent.tick++;
      parent.repaint();
    }
  }

  public TestAnim(String fn) {
    t = new Timer();
    t.schedule(new RepaintTimerTask(this), 500, 10);
  }

  public void paint(Graphics g)
  {
    double theta;
    g.setColor(Color.black);
    for(int i=0;i<60;i++)
      {
	theta = ((i * 6) * 3.1415/180);
	g.drawLine( (int)(125 + 60*Math.sin(theta)), 
		    (int)(125 + 60*Math.cos(theta)), 
		    (int)(125 + 70*Math.sin(theta)), 
		    (int)(125 + 70*Math.cos(theta)) );
      }
    g.setColor(Color.blue);
    tick = tick % 60;
    theta = -((tick * 6) * 3.1415/180);
    g.drawLine( 125, 125, 
		(int)(125 + 50*Math.sin(theta)), 
		(int)(125 + 50*Math.cos(theta)) );

  }

  public static void main(String args[]) {
    Frame f = new Frame("Hello");
    TestAnim window = new TestAnim("");
    f.add(window);
    f.setTitle("Test");
    f.setSize(250, 250);
    f.addWindowListener(new WindowAdapter() {
	public void windowClosing(WindowEvent e) {
	  System.exit(0);
	}
      });
    f.setVisible(true);
  }
}