At My Fingertips
Costruiamo la bandiera della Grecia, composta da nove strisce orizzontali bianche e blu di uguali dimensioni e da una croce bianca nell'angolo in alto a sinistra.
Per ottenerla possiamo scomporla in due parti, lo sfondo e la croce. Cominciamo dunque a disegnare lo sfondo; dato che le strisce in totale saranno nove, l'altezza di ogni striscia dovrà corrispondere a 1/9 dell'altezza complessiva della bandiera. Cominciamo dunque a creare una striscia blu e una bianca, che poi utilizzeremo per costruire lo sfondo
Ora possiamo costruire lo sfondo unendo le strisce. Potremmo, naturalmente, unire una striscia per volta, chiamando ripetutamente la funzione sopra. Ma questo procedimento risulterebbe lungo e ripetitivo, e ad ogni passo rischieremmo di commettere errori.
In alternativa, possiamo procedere con una lista di elementi da percorrere con un ciclo for, come abbiamo fatto nell'ultimo passo delle attività Bandiera dell'Italia e Bandiera tedesca (se non le hai ancora eseguite, prima di proseguire ti conviene portarne a termine almeno una, assicurandoti di aver capito bene l'ultimo passaggio, dedicato all' astrazione).
Inizieremo quindi a creare una lista di nove elementi, che chiameremo ALTERNANZA_STRISCE
, composta da una serie di 0 e di 1 alternati (per un totale di nove elementi: uno per ciascuna striscia dello sfondo). In seguito potremo percorrere la lista con un ciclo for: ad ogni passo del ciclo controlleremo se l'elemento su cui stiamo lavorando sia uno 0 o un 1; se si tratta di uno 0, aggiungeremo allo sfondo una striscia blu utilizzando la funzione sopra di PyTamaro; se invece si tratta di un 1, aggiungeremo uno striscia bianca.
La croce, a sua volta, è composta da due bracci bianchi di lunghezza pari all'altezza di cinque strisce dello sfondo della bandiera, ed è appoggiata su un quadrato blu i cui lati hanno la stessa lunghezza dei bracci della croce (osserva bene l'immagine della bandiera intera per determinare quale debba essere questa lunghezza). Creiamo dunque separatamente il quadrato e i bracci della croce per poi sovrapporli.
Ora che abbiamo lo sfondo e la croce occorre sovrapporre l'una all'altro. Non possiamo però usare la funzione sovrapponi, che metterebbe la croce al centro della bandiera. Dovremo invece modificare il punto di fissaggio delle due immagini, cioè il punto in cui si attaccano l'una all'altra, che normalmente è al centro: lo possiamo fare con la funzione fissa di PyTamaro (nella documentazione puoi vedere quali siano i punti di fissaggio a disposizione). Nel nostro caso occorrerà scegliere per entrambe le grafiche un nuovo punto di fissaggio in alto a sinistra. A quel punto ci basterà usare la funzione componi per unire il tutto e ottenere il risultato finale.
Suggerimento: se sei in difficoltà con i punti di fissaggio e non riesci a ottenere il risultato desiderato, puoi chiamare la funzione visualizza_grafica impostando su True
il parametro debug
(p. es. visualizza_grafica(bandiera_greca, True)
): in questo modo vengono visualizzate la bounding box (sotto forma di bordo rosso) e il punto di fissaggio (una croce giallastra). Questo ti può aiutare a capire dove stai sbagliando!
This activity has been created by Lardelli and is licensed under CC BY-SA 4.0.
Bandiera della Grecia
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version c3a8286 (Mon, 14 Oct 2024 13:30:28 GMT)