G
Guest
Gast
Ich arbeite an einen Zeichenprogramm, komme aber an folgenden Stelle(n) nicht weiter:
1, Wenn ich mehrere Objekte ineinander male und das innerste Objekte selektiere, werden alle Objekte hervorgehoben, das soll aber nicht sein.
2. wie könnte vorgehen, wenn der Nutzer in einen Bereich klickt, wo sich die Objekte überschneiden? Die Objekte dürfen sich überlappen.
Bei den zur Verfügung stehenden Zeichenobjekten handelt es sich um Rechtecke (auch mit runden Ecken), Kreise, Linien (Vektoren) und Gruppen. Jede dieser Klassen verfügt eine Methode, die auflöst, ob ein gegebener Punkt innerhalb des Objektes liegt - ich nutze hierfür die Methode contains(x) - z.B. in der Klasse Rechteck habe ein Objekt der Klasse Rectangle recht und nutze von diesen Objekt die contains - Methode.
Das Objekt Gruppe ist einfach eine Sammlung von Objekten von Typ Rechteck, Kreise, Linien und die Methoden der Klasse Gruppe rufen einfach die Methoden der Bauteile auf.
Ein kleiner Tipp wäre schon hilfreich.
1, Wenn ich mehrere Objekte ineinander male und das innerste Objekte selektiere, werden alle Objekte hervorgehoben, das soll aber nicht sein.
2. wie könnte vorgehen, wenn der Nutzer in einen Bereich klickt, wo sich die Objekte überschneiden? Die Objekte dürfen sich überlappen.
Bei den zur Verfügung stehenden Zeichenobjekten handelt es sich um Rechtecke (auch mit runden Ecken), Kreise, Linien (Vektoren) und Gruppen. Jede dieser Klassen verfügt eine Methode, die auflöst, ob ein gegebener Punkt innerhalb des Objektes liegt - ich nutze hierfür die Methode contains(x) - z.B. in der Klasse Rechteck habe ein Objekt der Klasse Rectangle recht und nutze von diesen Objekt die contains - Methode.
Das Objekt Gruppe ist einfach eine Sammlung von Objekten von Typ Rechteck, Kreise, Linien und die Methoden der Klasse Gruppe rufen einfach die Methoden der Bauteile auf.
Ein kleiner Tipp wäre schon hilfreich.