import java.awt.*; public class Liigu4 extends Frame implements Runnable{ double nurk=0; double raadius=50; double samm=0.05; int ooteaeg=10; //ms boolean veel=true; Image pilt, taust; public Liigu4(){ super("Ringike"); setSize(300, 300); setVisible(true); new Thread(this).start(); } public void run(){ while(veel){ joonista(); try{ Thread.sleep(ooteaeg); } catch(Exception e){e.printStackTrace();} } } public void paint(Graphics g){ int laius=getSize().width; int korgus=getSize().height; taust=createImage(laius, korgus); pilt=createImage(laius, korgus); raadius=Math.min(laius, korgus)/3; joonistaTaust(); g.drawImage(taust, 0, 0, this); } public void update(Graphics g){paint(g);} public void joonista(){ if((pilt!=null)&(taust!=null)){ Graphics g=pilt.getGraphics(); int keskx=getSize().width/2; int kesky=getSize().height/2; g.drawImage(taust, 0, 0, this); joonistaKujund( g, keskx+(int)(raadius*Math.cos(nurk))-5, kesky+(int)(raadius*Math.sin(nurk))-5 ); this.getGraphics().drawImage(pilt, 0, 0, this); nurk=nurk+samm; if(nurk>2*Math.PI)nurk-=2*Math.PI; } } void joonistaKujund(Graphics g, int x, int y){ g.setColor(Color.white); g.fillOval(x-10, y-10, 20, 20); g.setColor(Color.black); g.fillOval(x-6, y-6, 4, 4); g.fillOval(x+2, y-6, 4, 4); g.drawLine(x, y-1, x, y+3); g.drawArc(x-5, y-5, 10, 10, 0, -180); } void joonistaTaust(){ Graphics g=taust.getGraphics(); for(int i=0; i