Python Online | ||
Home . |
DU LERNST HIER... |
wie du mit Python animierte Computergrafiken erstellst. |
MUSTERBEISPIELE |
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, flackerfreie Bewegung, wenn die Bildfolge genügend schnell gezeigt wird. Als Beispiel zeichnest du mit der Funktion propeller() einen 3-blättrigen Propeller und lässt ihn langsam drehen. Die gedrehten Propeller-Positionen zeichnest du am einfachsten mit Hilfe des Befehls setHeading(a), wobei der Winkel a zu Beginn 0 und für jede neu Position um 10 Grad grösser ist.
Programm: from gturtle import * def rightArc(): repeat 30: fd(4) rt(3) def leftArc(): repeat 30: fd(4) lt(3) def propeller(): repeat 3: startPath() rightArc() right(90) rightArc() left(30) fillPath() makeTurtle() setFillColor("blue") hideTurtle() a = 0 while True: clear() propeller() delay(40) a += 10 setHeading(a) Beachte, dass du das Löschen unmittelbar vor dem neuen Zeichnen machst, damit der Bildschirm nicht längere Zeit leer ist, was zu Flackern führen kann. |
Programm: from gturtle import * def face(): setPenColor("black") penUp() repeat 12: fd(110) dot(10) bk(110) rt(30) penDown() def hand(): setPenColor("red") setPenWidth(5) forward(90) back(90) makeTurtle() hideTurtle() face() a = 0 while True: setHeading(a) setPenColor("red") hand() delay(250) setPenColor("white") dot(200) a += 30 |
Programm: from gturtle import * def billardTable(): setPos(-250, -200) repeat 2: fd(400); rt(90) fd(500); rt(90) makeTurtle() hideTurtle() billardTable() setPos(-100, -100) setHeading(60) while True: setPenColor("red") dot(60) delay(20) setPenColor("white") dot(62) forward(5) if getX() > 214 or getX() < -214: setHeading(360 - heading()) if getY() > 164 or getY() < -164: setHeading(180 - heading()) |
MERKE DIR... |
Eine Animation entsteht, indem man eine Szene wiederholt in einer leicht veränderten Situation zeichnet. Dazu löscht man die alte Szene und zeichnet sie neu in der veränderten Situation... In einfachen Fällen kann man eine Figur durch Übermalen mit der Hintergrundfarbe löschen. |
ZUM SELBST LÖSEN |
1. |
|
||||
2. |
|
||||
3. |
|
|
![]() |
![]() |
![]() |