🌐 IT

🌿 Generatore di frattali L-System

Genera frattali dai sistemi di Lindenmayer (L-system). Scegli un preset come il fiocco di neve di Koch o la curva del drago, oppure scrivi le tue regole di riscrittura e guarda la turtle disegnarli.

Una regola per riga, ad es. F=F+F--F+F. Simboli: F e G disegnano in avanti, + / - ruotano, [ e ] salvano/ripristinano la posizione.

4
GUIDA

Scopri di piu

01

Che cos'è un L-system?

Un L-system (sistema di Lindenmayer) è una grammatica formale inventata dal biologo Aristid Lindenmayer nel 1968 per modellare la crescita di piante e alghe. Si parte da una breve stringa assioma e si sostituisce ripetutamente ogni simbolo usando un insieme di regole di riscrittura, così la stringa diventa più dettagliata a ogni passaggio. La stringa finale viene poi letta come una sequenza di comandi di grafica turtle - muovi, ruota, ramifica - che tracciano il frattale sullo schermo.
02

L'alfabeto della turtle

Ogni simbolo è un'istruzione di disegno per una turtle immaginaria. F e G avanzano disegnando una linea; + ruota a sinistra dell'angolo impostato e - ruota a destra; [ sposta la posizione e la direzione correnti su una pila (iniziando un ramo) e ] le estrae (tornando al punto in cui il ramo è iniziato). Questi due comandi tra parentesi sono ciò che permette a una sola regola di far nascere steli e foglie, producendo forme realistiche, simili ad alberi, a partire da pochi caratteri.
03

Scrivere regole personalizzate

Per costruire il tuo frattale, imposta un assioma e una regola per riga. La classica curva di Koch usa assioma F, regola F=F+F--F+F e angolo di 60° - ogni passaggio sostituisce ogni F con quattro F più piccoli. Poiché ogni riscrittura può moltiplicare la lunghezza della stringa, la crescita è esponenziale, quindi il generatore limita le iterazioni a 7 e applica una protezione sulla lunghezza che blocca i pattern fuori controllo prima che congelino il browser.

Domande frequenti

Quali simboli posso usare nelle regole?
F e G disegnano una linea in avanti; + e - ruotano la turtle a sinistra e a destra dell'angolo impostato; [ e ] iniziano e terminano un ramo. Qualsiasi altra lettera è un segnaposto che non disegna nulla - viene solo riscritta dalle regole, ed è così che la struttura complessa si costruisce a ogni passaggio.
Perché c'è un limite alle iterazioni?
Ogni passaggio può moltiplicare la lunghezza della stringa, quindi il numero di comandi di disegno cresce esponenzialmente. Per mantenere il browser reattivo, il generatore limita le iterazioni a 7 e aggiunge una protezione sulla lunghezza che interrompe un pattern prima che diventi troppo grande per essere renderizzato fluidamente.
Qual è un L-system famoso?
Il fiocco di neve di Koch, la curva del drago e la punta di Sierpinski sono esempi classici, insieme ai modelli vegetali ramificati che Aristid Lindenmayer aveva originariamente progettato per descrivere con gli L-system.