At My Fingertips
Rapid Playground
In dieser Aktivität lernst du eine weitere Möglichkeit kennen, wie Grafiken verknüpft werden können. Gleichzeitig erstellst du weitere Funktionen.
Erstelle Schritt für Schritt gemeinsam mit der Lehrperson eine Funktion für das liegende Herz. Sie wird es dir gleichzeitig an der Wandtafel mit Papierprogrammierung erklären.
Dieser Theorieteil sei zum Nachlesen bei Unsicherheit oder Prüfungsvorbereitung gedacht. Du darfst ihn überspringen, wenn du jetzt weitere Beispiele programmieren möchtest. Springe dann zu Aufgabe 1.
Über jede erstellte Grafik lässt sich in PyTamaro ein Gitternetz mit je drei horizontalen und drei vertikalen Linien legen. Dadurch entstehen neun Schnittpunkte: vier beschreiben die Ecken der rechteckig umrahmten Grafik, vier liegen bei den Seitenmittelpunkten derselben und einer beschreibt den Mittelpunkt.
Die Gitterpunkte werden über folgende Wörter angesprochen:
Die Funktion fixiere nimmt zwei Werte entgegen: einen vom Datentyp Point und eine Grafik.
fixiere(punkt: Point, grafik: Grafik) -> Grafik
# Beispielaufruf
fixiere(unten_mitte, dreieck(60, 70, 30, gelb))
Sind zwei Grafiken fixiert, kann man sie an ihren Fixpunkten zur Deckung bringen. Dies erfordert den Aufruf der Funktion kombiniere. Im Beispielbild erfolgt diese Kombination an der unteren rechten Ecke des Dreiecks und der unteren Seitenmitte des gedrehten Rechtecks.
kombiniere(vordere_grafik: Grafik, hintere_grafik: Grafik) -> Grafik
Erstelle eine dem Bild oben ähnelnde Grafik: Ein Dreieck kombiniert mit einem zuvor gedrehten Rechteck.
Malst du vier Herzen grün an, dann kann daraus ein Glücksklee entstehen. Drehe die vier Herzen einzeln (blatt1 bis blatt4) und kombiniere sie am richtigen Fixpunkt, um eine Funktion "Kleeblatt" zu erhalten.
Hinweise:
Das Haus darf natürlich in anderen Farben erscheinen. Nutze rgb_farbe.
This activity has been created by Bernhard and is licensed under CC BY-SA 4.0.
It is derived from this activity, this activity, and this activity.
Grafische Komposition
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version 79aacf0 (Fri, 08 Nov 2024 13:24:29 GMT)