While you can work through this activity right on this page, we recommend you start a curriculum now to get an optimal learning experience.
Das Titel-GIF (Animation) besteht aus 200 Bildern, die nacheinander abgespielt werden, wie ein Film. Hier sehen Sie fünf Zwischenschritte:
Do Now!
Diskutieren Sie zu zweit: Wie könnte Code aufgebaut sein, um diesen wachsenden Mond herzustellen?
Lösungsvorschlag
die Farbkonstanten des Himmels und des Mondes erstellen
eine erste Funktion verfassen, die einen Mond vor einen Himmel zeichnet und diesen als eine Grafik zurückgibt
eine zweite Funktion verfassen, die diese verschiedenen Mondbilder zu einer Grafikliste vereint und zurückgibt
mit dem Ausgabebefehl show_animation die Grafikliste als Film abspielen
Farbkonstanten erstellen
Loading...
Mondfunktion
Erstellen Sie eine Funktion, die eine Grafik mit einer bestimmten Mondgrössen zurückgibt. Die Beispielausgabe besteht aus 5 verschiedenen Mondgrafiken, wie oben dargestellt.
Loading...
Filmfunktion
Erstellen Sie eine Funktion, die mit der Mondfunktion eine Liste von Mond-Grafiken zurückgibt. Dabei soll die Titelanimation entstehen.
Aufbau
Filmfunktion, die eine Grösse entgegennimmt und eine Liste von Grafiken zurückgibt -> list[Graphic]
Akkumulator als leere Liste erstellen, z. B. film
in einer for-Schleife die Liste mit Grafiken vom wachsenden Mond füllen
die Grafikliste zurückgeben
mit show_animation die Filmfunktion aufrufen und erhaltene Grafikliste als Film abspielen
Loading...
Argumente von show_animation
show_animation akzeptiert folgende drei Argumente:
eine Grafikliste als list[Graphic]
die Anzeigedauer in Millisekunden als int
eine Endlosschleife als bool.
Letztere zwei sind optional.
Do Now!
Ergänzen Sie oben bei show_animation die Anzeigedauer zu 80. Wird der Film jetzt schneller oder langsamer? Weshalb?
Langsamer, die Anzeigedauer jedes Bildes hat sich verdoppelt: von 40 (Standardwert) auf 80 ms.
Do Now!
Fügen Sie nach 80 den Wahrheitswert False ein. Was verändert sich und weshalb?
Die Animation wiederholt sich jetzt nicht mehr endlos oft, sondern hört nach einer Iteration (Wiederholung) auf. Die Grafikliste wird also nur einmal abgespielt.
Toolbox
Fügen Sie die Funktion wachsender_mond(...) Ihrer Toolbox hinzu (inkl. der Funktion mond(...)).
Fügen Sie die Funktion mond(...) Ihrer Toolbox hinzu, zusätzlich und separat, ohne die Funktion wachsender_mond(...).
Damit können Sie in folgenden Aktivitäten beide Funktionen separat verwenden, um weitere Mondbewegungen darzustellen.
Was Sie geübt und gelernt haben
Python
Sie können Listen und Schleifen verwenden, um eine Liste von Grafiken zu erstellen.
PyTamaro
Sie kennen die Funktion show_animation und können sie verwenden, um Grafiken auf verschiedene Art zu animieren.
Sie können die drei Argumente von show_animation verwenden, um die Geschwindigkeit und Wiederholung des Films zu ändern.
Eine Funktion, die eine andere Funktion benutzt, in die Toolbox aufnehmen.
This activity has been created by Gall and is licensed under CC BY-SA 4.0.