At My Fingertips

Rapid Playground

Documentation

Rauf und runter

Folgendes GIF (Animation) besteht aus 200 Bildern, die nacheinander abgespielt werden, wie ein Film.

steigend

Ein immer gleicher Ball liegt auf einer unsichtbaren 'wachsenden' Grafik, z. B. ein transparentes Rechteck oder eine Ellipse der Breite Null.

Hier sehen Sie fünf mögliche Zwischenschritte, wobei der Sockel zu Debugging-Zwecken sichtbar ist:

basic0basic0basic0basic0basic0

Dekomposition / Arbeitsschritte

  1. die (Farb-) Konstanten erstellen
  2. eine erste Funktion verfassen, die die Figur im momentanen Zustand zeichnet und diese als immer gleichgrosse Grafik zurückgibt, also eigentlich die einzelnen Frames eines Films
  3. eine zweite Funktion verfassen, die diese Figurpositionen (oder -konfigurationen) zu einer Liste von Grafiken vereint und zurückgibt
  4. mit dem Ausgabebefehl PyTamaro iconshow_animation die Grafikliste als Film abspielen

1. Konstanten

Loading...

2. Einzelne Frames

Aufgabe

Ergänzen Sie folgende Funktion, so dass genau die Titelbilder ausgegeben werden. pos_y gibt die Distanz des Balls zum 'Boden' an.

Loading...

Aufgabe

Verstecken Sie oben noch das Positionsviereck, im GIF ist es ja nicht sichtbar.

3. Filmfunktion

Erstellen Sie eine neue Filmfunktion, die 200 Bilder des (immer neu positionierten) Balls erstellt und diese in eine Liste von Grafiken einfügt. Diese Liste von Grafiken ist der Rückgabewert der Filmfunktion. So kann dann die Liste von Grafiken als Titelanimation abgespielt werden. Spicken Sie wenn nötig bei einer vorher besprochenen Animation.

Aufbau

  1. Filmfunktion, die eine Grösse entgegennimmt und eine Liste von Grafiken zurückgibt -> list[Graphic]
    1. Akkumulator als leere Liste erstellen, z. B. film oder frame_liste
    2. in einer for-Schleife die Liste mit den Grafiken der sich bewegenden Figur füllen
    3. die Grafikliste zurückgeben
  2. mit PyTamaro iconshow_animation die Filmfunktion aufrufen und erhaltene Grafikliste als Film abspielen
Loading...

Toolbox

Fügen Sie die Funktion Ihrer Toolbox hinzu.

Umkehren

Sie kennen das Konzept des Slicens (schneiden) mit [start:stop:step] nun schon von Strings und der range(start, stop, step)-Funktion. Man kann das in Python auch auf Listen anwenden. Praktischerweise können Sie sich damit wieder ganz viel Mühe ersparen, denn man kann die Filmfunktion aufrufen und dann gleich die Ausgabe kurzerhand mit einem Slice-Befehl umkehren, z. B.

umgekehrte_liste = erstelle_eine_liste(40, 2, magenta)[::-1]

Aufgabe

Ergänzen Sie folgende Zelle, um einen fallenden Ball zu animieren.

Loading...

Listen konkatenieren

Listen können Sie auch mit + aneinanderhängen, Fachbegriff konkatenieren:

Loading...

Zwei Filme konkatenieren

Aufgabe

Erstellen Sie mittels Konkatenation folgende Animation:

film_konkateniert

Refaktorieren (wiederverwenden) Sie die Funktion, die einen Film von einem steigenden Ball erstellt. Sie müssen also nur 1-3 Zeilen Code schreiben.

Loading...

Toolbox

Fügen Sie auch diese Funktion Ihrer Toolbox hinzu.

Was Sie geübt und gelernt haben

Python

  • Sie können Listen und Schleifen verwenden, um eine Liste von Grafiken zu erstellen.
  • Sie können eine Liste mit einem Slice-Befehl umkehren.
  • Sie können Listen konkatenieren.
  • Sie kennen den Begriff Refaktorieren und können effizient Code wiederverwenden.

PyTamaro

  • Sie können PyTamaro iconshow_animation verwenden, um Grafiklisten als Animation darzustellen.

This activity has been created by Gall and is licensed under CC BY-SA 4.0.

Rauf und runter

Logo of PyTamaro

PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI

Privacy PolicyPlatform Version 320e1c5 (Thu, 16 May 2024 14:11:39 GMT)