Vorlesung Informatik 1 - Teil A: Java Kurs
5.2 Klassen für geometrische Figuren
Klassen für Punkt, Linie, Rechteck und Ellipse:
Point2D, Line2D, Ellipse2D, Rectangle2D
Diese Klassen sind abstrakt! Jede dieser Klassen hat zwei innere Klassen Double und Float., die von der äußeren Klasse abgeleitet sind:
Line2D.Double und Line2D.Float.
Line2D linie = new Line2D.Float(0.f, 0.f, 10.f, 20.f);
Die abgeleiteten Klassen speichern alle Koordinaten und Parameter in doppelter bzw. einfacher Genauigkeit.
Double ist bequemer, weil man keine float-Literale angeben muss.
Alle diese Klassen außer Point2D implementieren das Interface Shape und können deshalb mit den Graphics2D Methoden fill(s:Shape):void und draw(s: Shape):void ausgefüllt bzw. gezeichnet werden.
Weitere Klassen:
RoundRectangle2D : Rechteck mit abgerundeten Ecken.
QuadCurve2D : Quadratische Kurve (Parabel) zwischen Start- und Endpunkt, die von einem Kontrollpunkt 'angezogen' wird.
CubicCurve2D: Kubische Kurve (Parabel) zwischen Start- und Endpunkt, die von zwei Kontrollpunkten 'angezogen' wird.
Arc2D: Sektor einer Ellipse. Kann entweder als Tortenstück (Arc2D.PIE), als Rest des Kuchens (Arc2D.OPEN) oder nur als Linie (Arc2D.CHORD) dargestellt werden. Die Winkel werden in Grad angegeben!
Path2D: Allgemeine Figur, deren Umrandung aus einer beliebigen Folge von Linien, Parabeln oder Bezier-Kurven besteht.