public class Zeichenblatt
{
    private ZEICHENFENSTER hintergrund;
    private Kreis kreis;
    private Kreis[] ballhaufen;
    
    public Zeichenblatt()
    {
        hintergrund = new ZEICHENFENSTER("Malerei",800,500);
    }

    public void zeichneKreis(int rn, int xn, int yn, int fn)
    {
        kreis = new Kreis(rn,xn,yn,fn);
        hintergrund.fuelleKreis(kreis.gibX(),kreis.gibY(),kreis.gibRadius(),kreis.gibFarbe());
    }
    
    public void zeichneZehnKreise()
    {
        for (int i = 1; i <= 10; i = i + 1)
        {
            int r=(int) (Math.random()*80);
            int x=(int) (Math.random()*800);
            int y=(int) (Math.random()*500);
            int fn=(int) (Math.random()*8);
            kreis = new Kreis(r,x,y,fn);
            hintergrund.fuelleKreis(kreis.gibX(),kreis.gibY(),kreis.gibRadius(),kreis.gibFarbe());
        }
    }
    
    public void zeichneHundertKreise()
    {
        for (int i = 1; i <= 100; i = i + 1)
        {
            int r=(int) (Math.random()*80);
            int x=(int) (Math.random()*800);
            int y=(int) (Math.random()*500);
            int fn=(int) (Math.random()*8);
            kreis = new Kreis(r,x,y,fn);
            hintergrund.fuelleKreis(kreis.gibX(),kreis.gibY(),kreis.gibRadius(),kreis.gibFarbe());
        }
    }
            
    public void zeichneVieleKreise(int n)
    {
        ballhaufen = new Kreis[n];
        for (int i = 0; i <= n-1; i = i + 1)
        {
            int r=(int) (Math.random()*80+10);
            int x=(int) (Math.random()*800);
            int y=(int) (Math.random()*500);
            int fn=(int) (Math.random()*8);
            ballhaufen[i] = new Kreis(r,x,y,fn);
            hintergrund.fuelleKreis(ballhaufen[i].gibX(),ballhaufen[i].gibY(),ballhaufen[i].gibRadius(),ballhaufen[i].gibFarbe());
        }
    }
        
    public void bewegeVieleKreise(int n)
    {
        zeichneVieleKreise(n);
        while(true)
        {
            //for (int zahl = 0; zahl <= 1000; zahl = zahl + 1)
            {
                for (int i = 0; i <= n-1; i = i + 1)
                {
                    hintergrund.fuelleKreis(ballhaufen[i].gibX(),ballhaufen[i].gibY(),ballhaufen[i].gibRadius(),8);
                    int dx=(int) (Math.random()*3-1.3);
                    int dy=(int) (Math.random()*3-1.4);
                    ballhaufen[i].setzeX(ballhaufen[i].gibX()+dx);
                    ballhaufen[i].setzeY(ballhaufen[i].gibY()+dy);
                    hintergrund.fuelleKreis(ballhaufen[i].gibX(),ballhaufen[i].gibY(),ballhaufen[i].gibRadius(),ballhaufen[i].gibFarbe());
                }
                hintergrund.warte((int) (n/2));
            }
        }
    } 
}
