EAD II – Übung 2 VERWENDUNG VORHANDENER KLASSEN Turtlegraphik verwendete Klassen zeichnen und rechnen intern über Winkelfunktionen mit double-Werten Koordinatensystem für Turtlegraphik ganzzahlig das führt zu Rundungsfehlern bei Kreisbögen und Winkeln Ausgleich: Turtleposition überprüfen (Position ermitteln mit getXPos() bzw. getYPos() und gegebenenfalls korrigieren (moveTo(x, y)) Stift vorher anheben und dann wieder absenken mit penUp() bzw. penDown() Farbe für den Stift zuweisen Dokumentation SimpleTurtle: void setPenColor(java.awt.Color color) Datentyp des erwarteten Parameters ist die Java-Klasse Color aus dem Paket java.awt dieses Paket muss extra eingebunden werden import java.awt.*; oder import java.awt.Color; Wie kann man beim Aufruf einen korrekten Parameter übergeben? Farbe für den Stift zuweisen http://www.dpunkt.de/java/index.html Paket java.awt Klasse Color Konstruktoren Variable für die Farbe erstellen und dieser einen Wert zuweisen Variable dann als Parameter an setPenColor() zuweisen Variable erstellen mit new ruft Konstruktor auf also vorher auswählen, welchen Konstruktor man verwenden will Farbe für den Stift zuweisen Liste der Konstruktoren in der Dokumentation Wie kann eine Farbe am Computer definiert werden? Technische Informatik 1 Auswahl für Beispiel: public Color(int r, int g, int b) Erzeugt ein neues Color-Objekt, das mit den Rot-, Grün- und Blauanteilen r, g und b initialisiert wird. Der Alpha-Wert wird auf 255 gesetzt. (Exception: IllegalArgumentException Falls die Parameter nicht im Bereich von 0 bis 255 liegen.) Farbe für Stift zuweisen neue Variable als Instanz der Klasse Color erzeugen: Color farbe = new Color(255, 0, 0); Welche Farbe wird in der Variable gespeichert? Farbe als Parameter verwenden: t1.setPenColor(farbe); Parameter bei der Farbzuweisung sind integer und können ebenfalls Variablen sein, das bietet viele Möglichkeiten in Verbindung mit Schleifen und Alternativen Rekursive Muster: Drachenkurve http://prezi.com/owwotizssuds/drachenkurve- turtle-grafik-c/ Rekursive Muster: Hilbertkurve https://www.fractalus.com/kerry/tutorials/hilbert/ hilbert-tutorial.html Blüten und Pflanzen http://programmingwiki.de/TurtleBlume