At My Fingertips
Da du nun weisst, wie du die for
-Schleife verwenden kannst, kannst du sie einsetzen für die Erstellung von komplexeren Grafiken.
(Quellen: https://www.pexels.com/de-de/foto/weisse-und-gelbe-blumenansicht-wahrend-des-tages-59984/, https://www.vetmeduni.ac.at/botanischer-garten/korbbluetengewaechse)
Das Gänseblümchen (Abb. links), ein Vertreter der Korbblütengewächse, zeichnet sich durch sein charakteristisches Blütenkörbchen aus (Abb. rechts). Dieser Blütenstand, der von Hüllblättern umgeben ist – nicht zu verwechseln mit Kelchblättern –, imitiert optisch eine grosse Einzelblüte. Der Körbchenboden beherbergt zahlreiche kleine Einzelblüten, bei denen die fünf Kronblätter entweder als abstehende Zunge bei den Zungenblüten oder als kleine Röhre bei den Röhrenblüten ausgeprägt sind. In der Aufsicht besteht der Blütenstand eines Gänseblümchens aus langen, weissen Zungenblüten, die in zwei Reihen zu einer Rosette arrangiert sind, und einem gelben Zentrum, das über hundert Röhrenblüten enthalten kann. Ebendiese Rosette kannst du mit einer for
-Schleife implementieren.
Da von den Zungenblüten primär die weissen, zusammengewachsenen Kronblätter (die "Zunge") zu sehen sind, vereinfachen wir das Ganze etwas. Schreibe die Funktion zungenbluete
, um eine "Zungenblüte" der gewünschten Länge und Farbe zu erzeugen. Rufe dazu die Funktion ellipse auf. Die Breite der Zungenblüte soll einem Viertel ihrer Länge entsprechen.
Teste deine Funktion, indem du eine weisse Zungenblüte mit der Länge 200
erzeugst und anzeigst.
Entwickle eine Funktion, die das kreisförmige Zentrum des Blütenstandes mit dem gewünschten Durchmesser und der gewünschten Farbe erzeugt. Unter dem Namen goldgelb
ist bereits eine warme, gelbe Farbe definiert. Auf die über hundert Röhrenblüten, die dieses Zentrum bilden, verzichten wir hier.
Teste deine Funktion, indem du ein goldgelbes Blütenstandzentrum mit Durchmesser 100
erzeugst und anzeigst.
Kommen wir nun zu der Funktion zungenbluetenrosette
, die eine Rosette erzeugt. Länge, Anzahl und Farbe der Zungenblüten sollen frei wählbar sein.
Verwende fixiere, drehe, kombiniere und eine for
-Schleife, um die Zungenblüten zu erzeugen, zu fixieren, und dann mit drehe
und kombiniere
in eine Rosette zu arrangieren.
Nutze ausserdem...
leere_grafik
FunktionDie leere_Grafik
dient in der Programmierung als Platzhalter oder Ausgangspunkt für die Komposition von Grafiken. Sie repräsentiert ein unsichtbares grafisches Objekt, welches man mit anderen Grafiken kombinieren kann.
Unten siehst du ein einfaches Beispiel dafür, wie du die leere_Grafik
verwenden kannst.
resultat = leere_grafik()
for i in range(anzahl):
neue_grafik = erstelle_neue_grafik(i)
resultat = kombiniere(resultat, neue_grafik)
Was "tut" dieser Code?
resultat
zugewiesen.neue_grafik
erstellt und dann mit dem resultat
(dessen Inhalt zu diesem Zeitpunkt die leere_Grafik
ist) kombiniert.resultat
zugewiesen.anzahl
- 1
) erreicht ist.resultat
wird mit jedem Schleifendurchlauf um eine neue_grafik
ergänzt.resultat
schlussendlich die fertige Grafikkomposition gespeichert.Rufe deine zungenbluetenrosette
Funktion schliesslich mit den Argumenten laenge 100
, anzahl 11
und farbe weiss
auf, um eine entsprechende Rosette zu erstellen und anzuzeigen.
Implementiere die Funktion gaensebluemchen
, welche den Blütenstand eines Gänseblümchens konstruiert.
Kombiniere dazu das Blütenstandzentrum mit der Zungenblütenrosette. Das Blütenstandzentrum, ein Kreis, ist bereits in dessen Mitte fixiert. Die Zungenblütenrosette ist dank ihrer Konstruktion auch im Zentrum fixiert. Du kannst also kombiniere verwenden, um die beiden Grafiken direkt auf ihren existierenden Fixierpunkten zu überlagern.
Beachte, dass der Parameter groesse
jeweils als erstes Argument den Funktionen bluetenstandzentrum
und zungenbluetenrosette
zu übergeben ist.
Du bist mit dem Konzept der "leeren Grafik" vertraut und kannst sie in Kombination mit einer for
-Schleife für die Grafikkomposition verwenden.
This activity has been created by Lichtsteiner and is licensed under CC BY-SA 4.0.
It is derived from this activity.
Gänseblümchen
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)