At My Fingertips
Das Ziel dieser Aktivität ist es, einen Himmel mit zufällig angeordneten Sternen zu zeichnen.
Am besten speicherst du die Sterne-Funktion der Sterne-Aktivität in deiner 🧰 Toolbox, so kannst du sie hier gleich weiterverwenden.
Die Herausforderung ist nun, mehrere Sterne an unterschiedlichen Orten zu platzieren. Eine Idee könnte sein, jeden Stern mit zwei transparenten rechtecken zu verbinden, und die so entstandenen Grafiken am gleichen Punkt (zum Beispiel oben_links) zu kombinieren.
Implementiere erst eine Funktion, welche eine Grafik mit je einem Rechteck für die X- und Y-Position verbindet, und die Grafik oben_links fixiert:
Die Farben dienen nur der Veranschaulichung; die Rechtecke sollen später transparent sein. Das gelbe Kreuz oben links markiert den Punkt, an dem die Grafik fixiert wird. Der rote Rahmen zeigt die Grenzen der Grafik an.
💡 Tipp: Roter Rahmen und gelbes Kreuz können angezeigt werden, wenn man bei zeige_grafik den debug
Parameter auf True
setzt.
Mit kombiniere können jeweils zwei Grafiken kombiniert werden.
💡 Elegant ginge das wieder mit einer Schleife oder einer kombiniere_mehrere
-Funktion, ähnlich der uebereinander
-Funktion aus der Mauritius Flagge Aktivität.
Mit einer List Comprehension lassen sich elegant auch grössere Sterne-Listen erstellen:
Mit der Funktion random.randint
lässt sich eine zufällige Ganzzahl (int
) erzeugen, welche zwischen den beiden eingegebenen Zahlen liegt.
Implementiere nun eine Funktion, welche einen Sternenhimmel mit zufällig angeordneten Sternen erzeugt.
💡 Tipp: durch sterne.append(hintergrund)
kann der Sternenliste noch eine Hintergrundgrafik angefügt werden. Achte darauf, dass die Sterne nicht ausserhalb der Hintergrundgrafik zu liegen kommen.
random.randint
lässt sich eine zufällige Ganzzahl (int
) erzeugen, welche zwischen den beiden eingegebenen Zahlen liegt.debug
Parameter auf True
, werden Begrenzungsrahmen der Grafik sowie der Punkt von fixiere angezeigt.kombiniere_mehrere
in die Toolbox zu speichern.This activity has been created by Lerbermatt and is licensed under CC BY-SA 4.0.
Sternenhimmel
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version b744b47 (Tue, 08 Oct 2024 16:30:14 GMT)