You are on page 1of 2

Disegnare un Fiocco di Neve

In questa scheda descriverò un sistema per disegnare delle figure frattali1 come la curva di
Kock, anche detta fiocco di neve.
Il sistema che descriverò è stato introdotto da un biologo ungherese, Aristid Lindenmayer,
nel 1968 e per questo prende il nome di Lindenmayer system, brevemente L-System.
L’idea alla base del sistema è che le figure autosomiglianti possano essere riprodotte ri-
petendo una serie di operazioni a partire da un disegno iniziale, che prende il nome di
assioma. Le operazioni consentite in un L-System sono elementari e corrispondono a
semplici istruzioni da dare ad una penna su un foglio:

Simbolo Operazione
F Vai avanti (di una quantità prefissata)
f Vai avanti, senza disegnare
+ Ruota in senso orario (di un angolo prefissato)
− Ruota in senso antiorario
[ Memorizza la posizione in cui ti trovi
] Torna all’ultima posizione memorizzata

Per esempio, possiamo disegnare un triangolo equilatero in questo modo:

C
120◦ b

120◦

b b

A B
1
Un frattale è una particolare figura geometrica che ha tra le sue particolarità quella di essere
automosigliante: una sua parte può essere simile all’intera figura

1
A partire dal punto A si avanza (verso destra), e si arriva al punto B; quindi si ruota di
120◦ verso sinistra, e si avanza di nuovo, verso il punto C. A questo punto si esegue una
nuova rotazione di 120◦ e si percorre l’ultimo tratto per tornare al punto A.
Nel linguaggio L-System si scriverà la seguente stringa:

F −F −F (1)

corrispondente alle istruzioni Avanza-Ruota-Avanza-Ruota-Avanza dopo aver fissata
l’ampiezza dell’angolo di rotazione a 120◦ . Questa è la nostra figura iniziale, a partire dalla
quale si inizierà la procedura che, ad ogni segmento, sostituirà la spezzata seguente

120◦

60◦

60◦

Questa spezzata è descritta dai seguenti comandi (qui l’angolo di rotazione deve essere
fissato a 60◦ ):
F − F + +F − F (2)
Ogni lato del triangolo, corrispondente ad una F nell’assioma (1), deve essere sostituito
dal percorso descritto in (2). Questa è la regola con cui si procede a costruire il fiocco
di neve, e che si applica ad ogni passaggio. Poiché l’impostazione dell’angolo di rotazione
deve essere la stessa sia nell’assioma (1) che nella stringa (2), dobbiamo rivedere l’assioma.
Infatti in (1) abbiamo usato un angolo di 120◦ , ma in (2) troviamo anche angoli di 60◦ .
Poiché possiamo ottenere un angolo di 120◦ con due angoli di 60◦ , ridefiniamo l’assioma in
questo modo:

F − −F − −F (3)

Ecco quindi come impostare in un L-System le istruzioni per disegnare un fiocco di
neve:
Angolo 60◦
Assioma F − −F − −F
Regola F −→ F − F + +F − F

2