Presentiamo il primo esempio di spirale costruita con il metodo IFS, o di Barnsley.
La matrice delle trasformazioni che ne permettono la costruzione e che è riportata nella seguente tabella:
|
a |
b |
c |
d |
e |
f |
p |
|
I |
0.728 |
-0.529 |
0.0 |
0.529 |
0.728 |
0.0 |
0.87 |
|
II |
0.3 |
0.0 |
+ 0.7 |
0.0 |
0.3 |
+ 0.51 |
0.13 |
E' questo un metodo compatto per scrivere le equazioni delle trasformazioni lineari, cioè quelle in cui le variabili sono tutte al primo grado; invece che scrivere:
(x'= ax + by + c) AND (y'= dx + ey + f)
si dispongono in una stessa riga i coefficienti che fanno parte della stessa trasformazione,
mentre l'ultima colonna rappresenta la probabilità con cui applicare la trasformazione.
Ad esempio, riferendoci alla I trasformazione, che si applica con probabilità del 90%, possiamo scrivere:
(x'= 0.728x -0.529y) AND (y'= 0.529x + 0.728y)
Non dimentichiamo che il nostro è un sistema di funzioni iterate, e dunque il risultato di ogni trasformazione deve diventare il numero in entrata per la prossima trasformazione, si tratta quindi di assegnare rispettivante ad x e a y x' e y'.
Ecco il listato del programma in linguaggio di progetto:
INIZIA Parti da un punto iniziale, ad esempio l'origine (x=0; y=0) Ripeti per 50000 volte: Estrai un numero a caso (di nome T) minore di 1 |
SCOPRI DI PIU': Prima trasformazione - Seconda trasformazione - Spirale passo per passo - Spirale passo per passo - Codice per costruire la spirale con HTML5 canvas e javascript
©2013 www.webfract.it