Modelliamo un mondo astratto con Python.

Ciao a tutti,

oggi studiamo i cicli necessari a creare un disegno astratto di questo tipo:

dis2.png

Disegno realizzato con Python

Seguitemi in questa avventura!

7ohP4GDMGPrUMp8dW6yuJTR9MKNu8P8DCXDU9qmmpUhCeNWwv1vBcLTgvAkz8GM5czPpkRNXspsEAh5zPKCi7aJy3UaQhKNf4db6.png

🔥🔥🔥ANALISI DEL PROGRAMMA.🔥🔥🔥

Analizziamo ora il programma Python per realizzare le varie piccole figure:

prog1.png

Disegno realizzato con Python e Vokoscreen 2.5.0

Come inizio importo i due moduli: turtle e random. Con shape("turtle") dico che il nostro puntatore sia fatto a tartaruga. Se affido a speed il valore nullo: speed(0) in modo da rendere rapidissima la simulazione.

prog2.png

Disegno realizzato con Python e Vokoscreen 2.5.0

Definiamo la funzione *Vieleck, cioè poligono. La funzione dipende da 3 parametri:

✅ Ecken ⇨ cioè angolo;
✅ Breite ⇨ cioè spessore;
✅ Schritte ⇨ cioè passo;

Definisco i numeri random per x e y con i comandi:

x= randint(-600,600)

y= randint(-300,300)

Quindi per x i valori sono compresi tra -600 e 600 e per y tra -300 e 300.
Con penup() alzo la penna, quindi non disegno. Con il comando setpos(x,y) possiamo affidare a x o a y un numero, quindi decidiamo il punto dove si sposterà il nostro cursore. Effettuato questo diamo ancora il comando pendown(), cioè abbassiamo la penna sul foglio e possiamo iniziare a disegnare.

Il disegno deve essere random, quindi anche i colori devono essere. Affido quindi ai colori principali di Python valori random:

🔶 rod cioè rosso avrà un colore random tra tutte le tinte rosse;
🔶 grun cioè verde avrà un colore random tra tutte le tinte verde;
🔶 blau cioè rosso avrà un colore random tra tutte le tinte blu.

Affido uno spessore width che renderò esplicito alla fine del programma. Infine dichiaro che la variabile Gefullodernicht è compresa tra valori random tra 0 e 1. Gefullodernicht significa riempito o no, se osserviamo la figura di sopra, vediamo che alcuni poligoni sono colorati all'interno e altri no. La seguente parte del programma indicherà le condizioni di riempimento o no dei poligoni e come disegnarli.

prog3.png

Disegno realizzato con Python e Vokoscreen 2.5.0

In questa parte scriviamo un ciclo if, diciamo sostanzialmente che se la variabile Gefullodernicht è pari a uno, vogliamo colorare internamente qualunque cosa che disegneremo nel ciclo for. Andiamo subito a dare i comandi begin_fill() e end_fill(), questi due comandi andranno a riempire le figure disegnate con il ciclo for.

Il ciclo for disegnerà un poligono, per ulteriori informazioni su come disegnare poligoni vi rimando ad altre lezioni: 🍀🍀 Triangoli e quadrifogli con Python.🍀🍀
Il nostro ciclo if, dopo il comando stesso richiede una condizione, ma può anche funzionare così:

if: ⇨ condizione
else: ⇨ condizione

Con questo metodo noi vogliamo dire: if se il valore di una variabile di riempimento è uno ⇨ colora il poligono creato grazie al successivo ciclo for, else (altrimenti) ⇨ crea semplicemente un poligono da non colorare all'interno. Nel secondo ciclo for, non utilizziamo infatti i comandi begin_fill() ed end_fill().

prog4.png

Disegno realizzato con Python e Vokoscreen 2.5.0

Nello ultima parte del programma scrivo un ciclo for dove definisco sul foglio la presenza di 100 poligoni e ne definisco le caratteristiche per tutti e 100 i poligoni:

❄️ Ecken, cioè gli angoli dei poligoni sono un numero compreso tra 3 e 16;
❄️ Breite, cioè uno spessore del tratto con cui disegniamo i poligoni compreso tra 3 e 8;
❄️ Schritte, cioè una lunghezza dei lati dei poligoni sono compreso tra 10 e 30 pixel;

Richiamo poi la funzione per realizzare l'esecuzione di tutti i 100 poligoni.
Nascondo poi la tartaruga con: hideturtle().

Lancio poi la simulazione premendo il pulsante F5 e ottengo un disegno simile a questo:


Disegno realizzato con Python eVokoscreen 2.5.0

Grazie per l'attenzione.

Alessandra

Le foto ed i video sono di mia proprietà

PUNTATE DI PYTHON:

Il Python e le tartarughe.
Python e le bandiere.
🍀🍀 Triangoli e quadrifogli con Python.🍀🍀
I cerchi con Python.
I fiori con Python.


colore_preferito.jpg


Utente di STEEMPOSTITALIA :)

drago18121996-000080.jpg

H2
H3
H4
3 columns
2 columns
1 column
2 Comments