Deutsch   English   

Beispielprogramme mit Klick auf Links

Turtlegrafik

Modul Import: from gturtle import *

Befehl Aktion
forward(distance), fd(distance) bewegt Turtle vorwärts
back(distance), bk(distance) bewegt Turtle rückwärts
left(angle) dreht Turtle um den gegebenen Winkel (in Grad) nach links
right(angle) dreht Turtle um den gegebenen Winkel (in Grad) nach rechts
hideTurtle(), ht() macht Turtle unsichtbar (Turtle zeichnet schneller)
showTurtle(), st() zeigt Turtle
penDown(), pd() setzt Zeichenstift ab (Spur sichtbar)
penUp(), pu() hebt den Zeichenstift (Spur unsichtbar)
setPenWidth(width) setzt die Dicke des Stifts in Pixel
speed(speed) setzt Turtlegeschwindigkeit im Bereich (1 bis 100, default 5)
Bei speed(-1) bewegt sich Turtle am schnellsten (ohne Animation)
delay(time) hält das Programm während der Zeit time (in Millisekunden) an
distance(x, y) gibt die Entfernung der Turtle zum Punkt(x, y) zurück (als float)
getPos() gibt die aktuelle Turtleposition zurück als Tupel mit zwei ints
getX() gibt die aktuelle x-Koordinate der Turtle zurück (int)
getY() gibt die aktuelle y-Koordinate der Turtle zurück (int)
setPos(x, y) setzt Turtle auf die Position (x, y) ohne eine Spur zu zeichnen
setX(x) setzt Turtle auf x-Koordinate ohne eine Spur zu zeichnen
setY(y) setzt Turtle auf y-Koordinate ohne eine Spur zu zeichnen
setRandomPos() setzt Turtle auf eine zufällig gewählte Position im Turtlefenster ohne eine Spur zu zeichnen
moveTo(x, y) bewegt Turtle auf die Position (x, y)
heading() gibt die Richtung der Turtle zurück, (0 gegen oben, im Uhrzeigersinn)
setHeading(degrees), setH(degrees) setzt die Richtung der Turtle (0 gegen oben, im Uhrzeigersinn)
setRandomHeading() setzt die Richtung zufällig zwischen 0 und 360°
towards(x, y) gibt die Richtung (in Grad) zur Position (x, y)
label(text) schreibt an der Turtleposition den Text aus
clear() löscht die Zeichnung, die Turtle bleibt am Ort und ist unsichtbar
clean() löscht die Turtlespuren, die Turtle bleibt am Ort sichtbar
clearScreen(), cs() löscht die Turtlespuren und setzt die Turtle in die Homeposition
clear("color") füllt den Hintergrund mit der gegebenen Farbe (Farbnamen: X11-Colors)


Farben
(Farben werden als Strings angegeben, ihre Namen sind hier ersichtlich)
setPenColor(color) legt Stiftfarbe fest (Farbnamen: X11-Colors)
setFillColor(color) legt Füllfarbe fest (Farbnamen: X11Colors)
dot(diameter) zeichnet einen mit der Stiftfarbe gefüllten Kreis
startPath() startet die Aufzeichnung der Turtlebewegung zum nachträglichen Füllen
fillPath() verbindet die aktuelle Turtleposition mit dem Startpunkt und füllt die geschlossene Figur mit der Füllfarbe
getPixelColorStr() gibt den Farbnamen (z.B. "blue") der Farbe des Pixels zurück, auf dem sich die Turtle gerade befindet

 

Sound (Töne werden mit Frequenzen oder mit Ton-Namen festgelegt)
playTone(frequency, duration) spielt Tone mit der gegebenen Frequenz, dauer in Millisekunden. Blockierende Funktion
playTone(frequency, duration, instrument) wie oben, mit gewählten Instrument (piano, guitar, trumpet, violin, organ, harp, xylphone)
playTone(frequency, duration, block = False) nicht blockierende Funktion, spielt mehrere Töne gleichzeitig

 

Eingabedialoge / Zufallszahlen
inputInt(prompt) öffnet einen modalen Dialog für die Eingabe einer ganzen Zahl und gibt den eingegebenen Integer zurück (falls kein Integer, wird ein Fehler angezeigt)
inputFloat(prompt) öffnet einen modalen Dialog für die Eingabe einer Dezimalzahl und gibt den eingegebenen Float zurück (falls kein Float, wird ein Fehler angezeigt)
input(prompt) öffnet einen modalen Dialog für Eingabe eines Strings und gibt die Eingabe als String zurück
import random importiert das modul random
randint(a, b) liefert eine ganzzahlige Zufallszahl a <= z <= b

 

Callbackregistrierung und Turtle-Objekte
makeTurtle() erzeugt eine (globale) Turtle an der Position (0, 0). Im WebTigerPython wird eine globale Turtle automatisch erzeugt.
makeTurtle(mousePressed = onMousePressed) erzeugt eine Turtle und registriert die Callbackfunktion onMousePressed, die auf Drücken einer Maustaste reagiert.
makeTurtle(mouseDragged = onMouseDragged) erzeugt eine Turtle und registriert die Callbackfunktion onMouseDragged, die auf die Bewegung mit gedrücken Maustaste reagiert.
makeTurtle(keyPressed = onKeyPressed) erzeugt eine Turtle und registriert die Callbackfunktion onKeyPressed die auf Drücken einer Tastaturtaste reagiert.
t = Turtle() erzeugt ein Turtle-Objekt t. Es können mehrere Turtleobjekte erzeugt werden, die mit der OOP Schreibweise aufgerufen werden können.

 

Demonstrationen

Programm Aktion
Goldstein5.py Turtlegrafik (forward/right-Paare)
Peano.py Fraktal mit Turtlegrafik
Spirolateral.py Turtlegrafik (Rekursionen)
Mondrian.py Computerkunst
TreeFractal.py Fraktaler Baum