Ich versuche, momentan folgende Graphik mithilfe von rekursiven Methoden zu erstellen:

Das erste bekomme ich noch sehr einfach hin mit folgendem Code:
[CODE lang="java" title="1.Grafik"]package Blatt10;
import static jsTools.Graph.*;
public class Aufgabe59 {
static void recCircle(int x, int y, int d) {
if (d < 7) {
return;
}
addCircle(x, y, d * 2, white);
addCircle(x, y + (d / 2), d, blue);
recCircle(x, y + d / 2 + d / 4, d / 4);
}
public static void main(String args[]) {
recCircle(20, 0, 350);
}
}[/CODE]
Das sieht dann bei mir so aus:

Also, alles gut.
Nun soll ich die zweite Grafik mit einer weiteren Methode erstellen und da tauchen bei mir leider die Probleme auf:
[CODE lang="java" title="2. Grafik"]package Blatt10;
import static jsTools.Graph.*;
public class Aufgabe59 {
static void recCircle(int x, int y, int d) {
if (d < 7) {
return;
}
addCircle(x, y, d * 2, white);
addCircle(x, y + (d / 2), d, blue);
recCircle(x, y + d / 2 + d / 4, d / 4);
//recCircle(x+d/4,y+d/2,d/4);
}
static void rightCircle(int x, int y, int d) {
if (d <7) {
return;
}
addCircle(x+d, y + (d/2), d, blue);
addCircle(x+d, y+d/2+d/4, d/2,white);
recCircle(x+d,y+d/2+d/4,d/4);
recCircle(x+d+d/2,y+d/2+d/4,d/4); // rechter blauer Kreis rechts
recCircle(x+d/2,y+d/2+d/4,d/4); // linker blauer Kreis rechts
}
public static void main(String args[]) {
recCircle(20, 0, 350);
rightCircle(20,0,350);
}
}[/CODE]
Mit diesem Code sieht es dann so aus:

Leider komme ich da auch nicht weiter.
Ich habe es für den linken Kreis versucht, die rekursiven Kreise rechts hinzuplatzieren, indem ich in die erste Methode dies einsetze:
Dennoch kommt bei mir nur das heraus:

Ich will an sich ja nur, dass der blaue Kreis rechts neben dem anderen eingezeichnet wird, aber da er ja bei mir wieder mit weiss anfängt, kommt eben das raus.
Ich komme an dieser Stelle dann auch nicht weiter, dass dann beginnend von dem blauen Kreis das wieder rekursiv eingezeichnet wird.
Vorschläge willkomme ich sehr.
Danke.

Das erste bekomme ich noch sehr einfach hin mit folgendem Code:
[CODE lang="java" title="1.Grafik"]package Blatt10;
import static jsTools.Graph.*;
public class Aufgabe59 {
static void recCircle(int x, int y, int d) {
if (d < 7) {
return;
}
addCircle(x, y, d * 2, white);
addCircle(x, y + (d / 2), d, blue);
recCircle(x, y + d / 2 + d / 4, d / 4);
}
public static void main(String args[]) {
recCircle(20, 0, 350);
}
}[/CODE]
Das sieht dann bei mir so aus:

Also, alles gut.
Nun soll ich die zweite Grafik mit einer weiteren Methode erstellen und da tauchen bei mir leider die Probleme auf:
[CODE lang="java" title="2. Grafik"]package Blatt10;
import static jsTools.Graph.*;
public class Aufgabe59 {
static void recCircle(int x, int y, int d) {
if (d < 7) {
return;
}
addCircle(x, y, d * 2, white);
addCircle(x, y + (d / 2), d, blue);
recCircle(x, y + d / 2 + d / 4, d / 4);
//recCircle(x+d/4,y+d/2,d/4);
}
static void rightCircle(int x, int y, int d) {
if (d <7) {
return;
}
addCircle(x+d, y + (d/2), d, blue);
addCircle(x+d, y+d/2+d/4, d/2,white);
recCircle(x+d,y+d/2+d/4,d/4);
recCircle(x+d+d/2,y+d/2+d/4,d/4); // rechter blauer Kreis rechts
recCircle(x+d/2,y+d/2+d/4,d/4); // linker blauer Kreis rechts
}
public static void main(String args[]) {
recCircle(20, 0, 350);
rightCircle(20,0,350);
}
}[/CODE]
Mit diesem Code sieht es dann so aus:

Leider komme ich da auch nicht weiter.
Ich habe es für den linken Kreis versucht, die rekursiven Kreise rechts hinzuplatzieren, indem ich in die erste Methode dies einsetze:
Java:
recCircle(x+d/4,y+d/2,d/4);
Dennoch kommt bei mir nur das heraus:

Ich will an sich ja nur, dass der blaue Kreis rechts neben dem anderen eingezeichnet wird, aber da er ja bei mir wieder mit weiss anfängt, kommt eben das raus.
Ich komme an dieser Stelle dann auch nicht weiter, dass dann beginnend von dem blauen Kreis das wieder rekursiv eingezeichnet wird.
Vorschläge willkomme ich sehr.
Danke.