![]()
DU LERNST HIER... |
wie du animierte Computergrafiken erstellst. Eine Animation besteht aus Einzelbildern, die sich nur wenig ändern und Schritt um Schritt zeitlich nacheinander dargestellt werden. Da das menschliche Auge nur rund 25 Bilder pro Sekunde erfassen kann, ergibt sich wie beim Film eine fliessende, ruckelfreie Bewegung, wenn die Bildfolge genügend schnell gezeigt wird. Die Bilder kannst du mit der Turtle zeichnen oder als Bilddateien laden. |
MUSTERBEISPIEL |
In deinem Beispiel programmierst du einen rotierenden Propeller. Da die animierte Figur mehrmals verwendet wird, ist es vorteilhaft, das Programm modular aufzubauen, d.h. die Figuren mit Hilfe von Funktionen darzustellen. Das macht dein Programm übersichtlicher. Mit Hilfe der Funktionen bogen(), blatt() und propeller() zeichnest du einen 3-blättrigen Propeller.
Programm: from gturtle import * def bogen(): repeat 45: forward(3) right(2) def blatt(): startPath() bogen() right(90) bogen() left(150) fillPath() def propeller(): repeat 3: blatt() right(120) makeTurtle() hideTurtle() setFillColor("blue") repeat: propeller() delay(40) right(4) clear()
Programm: from gturtle import * def watchFace(): setPenColor("black") penUp() repeat 12: forward(110) dot(10) back(110) right(30) penDown() def hand(): setPenWidth(5) forward(90) back(90) makeTurtle() hideTurtle() watchFace() a = 0 while True: setHeading(a) setPenColor("red") hand() delay(300) setPenColor("white") hand() a += 30 |
MERKE DIR... |
| Bei einer Animation wird in einer Wiederholschleife eine Figur jeweils eine kurze Zeit angezeigt, dann gelöscht und an einer leicht veränderten Position erneut angezeigt. Zum Löschen der Figur verwendest den Befehl clear() oder clear("color"), falls der Hintergrund nicht weiss ist. Dieser löscht das ganze Fenster, die Turtle bleibt aber an der aktuellen Position. Machmal ist es vorteilhaft nur die animierte Figur jeweils mit der Hintergrundfarbe zu übermalen, bevor sie an der neuen Position gezeichnet wird. |
ZUM SELBST LÖSEN |
|
|
|
![]()