4 gewinnt

So Änderung!*g

habe die Grafiken jetzt auch selbst gezeichnet mit:
Code:
Graphics2D g2 = (Graphics2D) g;
        g2.setColor(Color.BLUE);
        myRectangle.setFrame(10, 10, 50, 50);
        g2.fill(myRectangle);
        
        g2.setColor(Color.WHITE);
        myCircle.setFrame(15, 15, 40, 40);
        g2.fill(myCircle);

=> Viereck mit weißen Kreis! Denk mir dieser ist dann leichter zum füllen!

wie mach ich das jetzt in einem Array mit der Position?
 
Dass du dich entschieden hast die Kreise selbst zu zeichnen finde ich gut, aber meiner Meinung nach wäre es sinnvoller den Hintergrund mit einem mal blau zu machen und auf diesen Hintergrund die vielen weißen Kreise zu setzen...

Der Mittelpunkt wäre dann bei 1/16 der Breite bzw. Höhe, der Abstand bliebe weiterhin 1/8. Dein Durchmesser sollte auch keine feste Zahl sein, wenn alles skalierbar sein soll. für den Radius könnte z.b. 1/24 der Breite bzw. Höhe sein, d.h. der "Rahmen" des ersten Kreises beginnt bei 1/16*breite-1/24*breite,1/16*hoehe-1/24*hoehe (1/48*breite,1/48*hoehe) und ist 1/12*breite breit und 1/12*hoehe hoch.

Das Zeichnen des blauen Hintergrundes solltest du dann vor den geposteten Code durchführen können und das Zeichnen vom Image ersetzt du durch das Zeichnen vom weißen Kreis.
 
Zuletzt bearbeitet:
aber wenn ich jetzt eine dieser Kreiese gelb färben möchte, wie kann ich denn das angehen?

Code:
int[][] board = new int[i][j];

        for ( i = 0; i < 8; i++) {
            for (  j = 0; j < 8; j++) {
                g2.setColor(Color.WHITE);
                myCircle.setFrame(posX+5, posY+5, circleWidth-5, circleHeight-5);
                g2.fill(myCircle);
                
                posX += circleWidth;
            }
            posX=0;
            posY += circleHeight;
        }
 
Zurück