Aufgaben

Die Quelltexte zu verschiedenen Aufgaben sind in im Unterpaket aufgaben zu finden.

Aufgabe 1:

Machen Sie sich mit der Klasse AffineTransform vertraut. Schreiben Sie zu diesem Zweck eine Testklasse, die in einem Anwendungsfenster eine geometrische Figur (z.B. ein Rechteck oder ein anderes regelmäßiges Vieleck) transformiert:

  • Verschieben der geometrischen Figur,
  • Skalieren um einen einheitlichen Wert, spiegeln um die x- und y-Achse,
  • Drehen um den Koordinatenursprung und um ein Mittelpunkt der geometrischen Figur,
  • Scheren der geometrischen Figur.

Aufgabe 2:

Schreiben Sie eine Methode für eine achsparallele Bildschirmtransformation! Ergänzen Sie diese Methode in einer zweiten Variante um einen Drehwinkel.

Aufgabe 3:

Schreiben Sie eine Klasse ShapeViewer zur Darstellung (Auszeichnen) geometrischer Figuren vom Typ Shape.

  • Verwenden Sie die Elternklasse JContentPane, die eine Anzeigefläche bietet und wie andere GUI-Elemente in ein Anwendungsfenster eingebunden werden kann.
  • Verwenden Sie die o.g. Methode für die achsparallele Bildschirmtransformation!
  • Schreiben Sie eine Methode, mit der die Mausposition ins Weltkoordinatensystem zurückgerechnet wird.

Aufgabe 4:

Erweitern Sie die Klasse ShapeViewer.

  • Führen Sie Darstellungsebenen (Datentyp Layer) ein, denen Sie graphische Gestaltungselemente (Farben, Linien etc,) zuweisen können.
  • Schreiben Sie eine Methode, mit der Sie einzelne geometrische Figuren aus der Mengen der dargestellten Objekte mit der Maus auswählen können.