Per la costruzione di questi alberi occorre aggiungere un nuovo simbolo all'alfabeto che abbiamo usato finora.
Oltre alle regole:
Vediamo ora in dettaglio la costruzione del cespuglio a sinistra in alto nella pagina.
Sostituzione: F= FF-[-F+F+F]+[+F-F-F]
Riduzione: 9/10
Angolo: 22.5°
Nel primo passo viene tracciato un segmento verticale
| ![]() |
Così continuando, ogni volta vengono tracciati due rami, uno a destra e l'altro a sinistra del ramo precedente, ed ad ogni iterazione il segmento unitario è i nove decimi del precedente. |
La costruzione del cespuglio a destra in alto nella pagina è analoga e ne trasmettiamo soltanto il codice e le immagini dei primi quattro passi.
Lista delle operazioniaxiom: +++FSostituzione: F=F[-F]F[+F][F] Angolo: 30° Riduzione: 9/10 | ![]() |
Vediamo ora come tradurre in codice eseguibile il procedimento appena descritto.
Si tratta di introdurre una variabile strutturata tipo matrice nella quale memorizzare nell'ordine:
Case "["
conta = conta + 1
appoggio(conta,1) = x1s
appoggio(conta,2) = y1s
appoggio(conta,3) = gradovecchio
...
Nel momento in cui si incontra la parentesi chiusa, occorre ripristinare le condizioni precedenti. Questo può essere fatto mediante il seguente frammento di codice:
Case "]"
x1s = appoggio(conta, 1)
y1s = appoggio(conta, 2)
gradovecchio = appoggio(conta, 3)
radiante = gradovecchio * 0.017453293
conta = conta - 1
...
In questo modo la prossima volta che si incontrerà una parentesi chiusa ci si riferirà correttamente all'ultima parentesi aperta.
Segnaliamo un sito dove si possono trovare, fra l'altro, i codici generativi di numerosi alberi frattali costruiti con la tecnica l-system.
Segnaliamo infine la nostra pagina sugli alberi frattali costruiti con metodo ricorsivo.
| | |
©2002 - 2008www.webfract.it