Startseite
Inhaltsverzeichnis |
table border="0" cellpadding="0" cellspacing="0">
Turtle1 auf Zeichenfläche1:
Turtle2 auf Zeichenfläche2:
Wir wollen die nachfolgenden Anweisungen ausführen und anschließend vergleichen.
Vergleichend stellen wir fest:
- Die Darstellungen sind zunächst identisch.
- Gleiche Anweisungen lassen sich in Wiederholungen (Zählschleifen) beliebig oft ausführen.
- Anweisungen können modularisiert, d.h. in Prozeduren unter einem geeigneten Bezeichner (Namen) zusammengfasst werden.
- Prozeduren können Parameter (Platzhalter) haben, die z.B. Objekte in variabler Größe zeichnen lassen.
Turtle-Befehle
Die folgende Tabelle enthält die wesentlichsten Sprachelemente der Turtle-Grafik.
| Syntax | Semantik |
| canvas.clear(); | löscht die Zeichenfläche, |
| turtle.move(<x>,<y>); | positioniert die Turtle in der Zeichenfläche, x ... Spaltenkoordinate, y ... Zeilenkoordinate, |
| turtle.forward(<x>); | lässt die Turtle x Schritte vorwärts gehen, |
| turtle.backward(<x>); | lässt die Turtle x Schritte zurück gehen, |
| turtle.right(<x>); | dreht die Turtle um x Grad nach rechts, |
| turtle.left(<x>); | dreht die Turtle um x Grad nach links, |
| turtle.penDown(); | setzt den Stift ab, so dass Turtle-Bewegungen eine Spur hinterlassen, |
| turtle.penUp(); | hebt den Stift an, so dass Turtle-Bewegungen keine Spur hinterlassen, |
| turtle.penWidth(<x>); | setzt die Breite des Stiftes auf den Wert x, |
| turtle.penColor(<r>,<g>,<b>); | legt den Fabwert des Stiftes fest, mögliche Zahlenwerte für rot (r), grün (g) und blau (b) sind: 0 ... 255, |
| turtle.hide(); | macht die Turtle unsichtbar, |
| turtle.show(); | macht die Turtle sichtbar, |
| turtle.penErase(); | die Turtle löscht eine gezeichnete Linie (wie ein Radiergummi), |
Vom Dreieck zum N-Eck
Ergänze zunächst die Prozedur zum Zeichnen eines gleichseitigen Dreiecks. Verallgemeinere dann die Lösung zur Darstellung regelmäßiger N-Ecke.
|
Gleichseitiges Dreieck: |
Regelmäßiges N-Eck: |
|
|
|
|
Prozeduren rufen Prozeduren auf
In einer Turtlegrafik können komplexe Figuren mit bereits definierten Prozeduren beschrieben werden. So lässt sich ein Haus aus 2 regelmäßigen N-Ecken zusammensetzen. Natürlich muss auch hier die Prozedur n_eck zuvor definiert werden.
|
|
Aufgaben
Die nachfolgenden Aufgaben sollen auf einer Turtlegrafik-Seite unter dem eigenen Benutzernamen erstellt werden.
-
Nikolaushaus
Das bekannte Nikolaushaus soll in einem Zug gezeichnet werden, d.h. jede Kante wird dabei genau einmal durchlaufen.
Schreibe eine Prozedur, die das Nikolaushaus in beliebiger Größe zeichnet. -
Treppe
Zeichne mit einer entsprechenden Prozedur eine Treppe mit beliebiger Stufenzahl und beliebiger Sufenhöhe bzw. -breite (vgl. Abbildung).

-
Pentagramm
Die Turtle soll ein Pentagramm (Stern mit 5 Spitzen - vgl. Abbildung) zeichnen.
Überlege dazu, welche Winkel zuvor berechnet werden müssen.
Hinweis: Die Spitzen des Pentagramms schließen ein Pentagon (regelmäßiges Fünfeck) ein. -
Rosetten
Wenn einfache regelmäßige N-Ecke mehrfach gezeichnet werden und sich dabei die Turtle nach jedem N-Eck ein Stück weiter dreht, können schöne Rosetten generiert werden.
Entwickle eine Prozedur, die derartige Grafiken farbig erstellt.
