🌐 SV

🌿 L-system-fraktalgenerator

Skapa fraktaler från Lindenmayer-system (L-system). Välj en förinställning som Koch-flingan eller drakkurvan, eller skriv egna omskrivningsregler och se hur sköldpaddan ritar dem.

En regel per rad, t.ex. F=F+F--F+F. Symboler: F och G ritar framåt, + / - vrider, [ och ] sparar/återställer position.

4
GUIDE

Las mer

01

Vad är ett L-system?

Ett L-system (Lindenmayer-system) är en formell grammatik som uppfanns av biologen Aristid Lindenmayer 1968 för att modellera tillväxt hos växter och alger. Du börjar med en kort axiom-sträng och ersätter sedan varje symbol upprepade gånger med hjälp av en uppsättning omskrivningsregler, så att strängen blir mer detaljerad för varje pass. Den slutliga strängen läses sedan som en sekvens av turtle-grafikkommandon - flytta, vrid, förgrena - som ritar upp fraktalen på skärmen.
02

Sköldpaddans alfabet

Varje symbol är en ritinstruktion för en tänkt sköldpadda. F och G flyttar framåt medan en linje ritas; + vrider vänster med den vinkel du har ställt in och - vrider höger; [ lägger den aktuella positionen och riktningen på en stack (och börjar en gren) och ] plockar upp dem igen (och går tillbaka till där grenen började). De två hakparenteskommandona gör att en enda regel kan skjuta ut stjälkar och blad och skapa naturtrogna, trädliknande former med bara några få tecken.
03

Skriva egna regler

För att bygga din egen fraktal ställer du in ett axiom och en regel per rad. Den klassiska Koch-kurvan använder axiom F, regeln F=F+F--F+F och en vinkel på 60° - varje pass ersätter varje F med fyra mindre. Eftersom varje omskrivning kan multiplicera strängens längd växer den exponentiellt, så generatorn begränsar iterationer till 7 och använder en längdspärr som stoppar skenande mönster innan de låser din webbläsare.

Vanliga fragor

Vilka symboler kan jag använda i regler?
F och G ritar en linje framåt; + och - vrider sköldpaddan vänster och höger med den vinkel du har ställt in; [ och ] börjar och avslutar en gren. Alla andra bokstäver är platshållare som inte ritar något - de omskrivs bara av reglerna, vilket är så den komplexa strukturen byggs upp för varje pass.
Varför finns det en begränsning för iterationer?
Varje pass kan multiplicera strängens längd, så antalet ritkommandon växer exponentiellt. För att hålla webbläsaren responsiv begränsar generatorn iterationer till 7 och lägger till en längdspärr som stoppar ett mönster innan det blir för stort för att renderas smidigt.
Vad är ett känt L-system?
Koch-flingan, drakkurvan och Sierpinski-pilspetsen är klassiska exempel, tillsammans med de förgrenade växtmodeller som Aristid Lindenmayer ursprungligen utformade L-system för att beskriva.