I petali dei tre fiori

comparazione forme continue e alternate

I segmenti (detti petali) di fior di triangolo, di fior di quadrato e di fior di esagono sono rispettivamente nella prima, nella seconda e nella terza riga. Nelle prime due colonne ci sono le due forme continue e nelle ultime due le forme alternate. Quando il fondo è bianco si evidenzia il tipo di sostituzione da operare per ottenere il frattale. Quando il fondo diventa giallo si effettua la sostituzione annunciata in precedenza fino ad ottenere il risultato finale. Da notare che mentre nella prima colonna avviene continuamente la sostituzione di un segmento con una linea zig-zag fatta a esse, nella seconda colonna la linea zig-zag è fatta a mo' di zeta. Nella terza colonna si alterna la sostituzione ad esse e a zeta come anche nella quarta ma con ordine invertito.

Il codice generante i segmenti (detti petali) su cui si basano i vari fiori

to pettricon :x :liv :s
if :liv=0 [fd :x stop]
rt 30*:s
pettricon :x/sqrt 3 :liv-1 :s
lt 120*:s
pettricon :x/sqrt 3 :liv-1 :s
rt 120*:s
pettricon :x/sqrt 3 :liv-1 :s
lt 30*:s
end
petalo di triangolo
continuo
:x       dimensioni
:liv      livello
:s        1  per zig-zag a esse -1 per zig-zag a zeta
to pettrialt :x :liv :s
if :liv=0 [fd :x stop]
rt 30*:s
pettrialt :x/sqrt 3 :liv-1 -:s
lt 120*:s
pettrialt :x/sqrt 3 :liv-1 -:s
rt 120*:s
pettrialt :x/sqrt 3 :liv-1 -:s
lt 30*:s
end
petalo di triangolo
alternato
:x       dimensioni
:liv      livello
:s        1  per zig-zag alternato esse-zeta
          -1 per zig-zag alternato zeta-esse
to petquacon :x :liv :s
if :liv=0 [fd :x stop]
rt :s*arctan 1/2
petquacon :x/sqrt 5 :liv-1 :s
lt 90*:s
petquacon :x/sqrt 5 :liv-1 :s
rt 90*:s
petquacon :x/sqrt 5 :liv-1 :s
lt :s*arctan 1/2
end
petalo di quadrato
continuo
:x       dimensioni
:liv      livello
:s        1  per zig-zag a esse -1 per zig-zag a zeta
to petquaalt :x :liv :s
if :liv=0 [fd :x stop]
rt :s*arctan 1/2
petquaalt :x/sqrt 5 :liv-1 -:s
lt :s*90
petquaalt :x/sqrt 5 :liv-1 -:s
rt :s*90
petquaalt :x/sqrt 5 :liv-1 -:s
lt :s*arctan 1/2
end
petalo di quadrato
alternato
:x       dimensioni
:liv      livello
:s        1  per zig-zag alternato esse-zeta
          -1 per zig-zag alternato zeta-esse
to petesacon :x :liv :s
if :liv=0 [fd :x stop]
rt :s*arcsin (sqrt 21)/14
petesacon :x/sqrt 7 :liv-1 :s
lt 60*:s
petesacon :x/sqrt 7 :liv-1 :s
rt 60*:s
petesacon :x/sqrt 7 :liv-1 :s
lt :s*arcsin (sqrt 21)/14
end
petalo di esagono
continuo
:x       dimensioni
:liv      livello
:s        1  per zig-zag a esse -1 per zig-zag a zeta
to petesaalt :x :liv :s
if :liv=0 [fd :x stop]
rt :s*arcsin (sqrt 21)/14
petesaalt :x/sqrt 7 :liv-1 -:s
lt 60*:s
petesaalt :x/sqrt 7 :liv-1 -:s
rt 60*:s
petesaalt :x/sqrt 7 :liv-1 -:s
lt :s*arcsin (sqrt 21)/14
end
petalo di esagono
alternato
:x       dimensioni
:liv      livello
:s        1  per zig-zag alternato esse-zeta
          -1 per zig-zag alternato zeta-esse