ALBERO DI NATALE DI PITAGORA

albero frattale

 

Il programma ricalca quello dell'albero di Pitagora, tranne che alterniamo le rotazioni e rispettive contrazioni a seconda che del numero dei passi.

Per la procedura useremo le stesse variabili, ma aggiungeremo una variabile tipo integer che segni i passi del programma, a partire da 1

Sottoprogramma PitNat(n: intero, x1, y1, x2, y2, x3, y3, x4, y4, ra, rb: Double, p: intero)
Se n = 0 allora
...   'usa lo stesso codice
Altrimenti

Se p č dispari allora

'per il quadrato a destra si usa la rotazione di 150° in senso antiorario intorno a (x4,y4) e la contrazione di 0.5, cioč
   T = 2.618
   ra = 0.5
'per il quadrato a sinistra si usa la rotazione di 240° in senso antiorario intorno a (x3,y3) e la contrazione di 0.866, cioč

Se osserviamo i primi 4 passi del formarsi del nostro albero vediamo che esso rispetta le stesse trasformazioni dell'albero di Pitagora con gli angoli acuti di 30° e 60°, solo che le trasformazioni si costruiscono alternativamente sul cateto sinistro e su quello destro.

   T1 = 4.18879
   rb = 0.866

Altrimenti
'per il quadrato a destra si usa la rotazione di 120° in senso antiorario intorno a (x4,y4) e la contrazione č di 0.866, cioč
   T = 2.094
   ra = 0.866
'per il quadrato a sinistra si usa la rotazione di 210° in senso antiorario intorno a (x3,y3) e la contrazione di 0.866, cioč
   T1 = 3.665
   rb = 0.5
Fine se

... 'Continua lo stesso codice


Ma chiameremo ricorsivamente

PitNat(n - 1, x1q4, y1q4, x1q1, y1q1, x1q2, y1q2, x1q3, y1q3, r1, r2, p+1)

PitNat(n - 1, x1q6, y1q6, x1q7, y1q7, x1q8, y1q8, x1q5, y1q5, r1, r2, p+1)




Alberi di Pitagora: Introduzione   Pit45°   Pit30°   Codice    Di Natale    Casuali    Generalizzati   Di Natale generalizzati


 

Introduzione
Definizione

Realizzazione

Tipi di frattali
Caratteristiche
Alberi lSystem
Alberi iterativi
Altri Iterativi
Indice
Home
Contatti

©2002 - 2012 www.webfract.it