Click here to start the visualization
)
or click here or here or here (SEIZURE WARNING) for some more examples of what can be generated
How to use this site:
Clicking anywhere on the visualization will bring up a menu with a bunch of sliders you can use to change how the L-Systems are generated. Clicking off the menu will make it disppear. Using the menu you can control the following parameters:
Fade time
: The time it takes for a line to completely fade away
- : The number of lines that are drawn every frame
Lines per frame
button at the bottom of the menu and it will change the URL of the page to one that includes all the current parameters.
A brief explanation of L-Systems:
Growing an L-System
An L-System is a string rewriting system that can generate fractal and tree like structures. They consist of a seed string and a set of rules to grow the seed into a more complex string . Each rule operates on a single character of the string, and replaces that character with another string. For example, consider the following seed and rules:
Seed: “abc” Rules: “a” -> “cc”, “c” -> “ba”
Applying these rules to the seed will yield the string "ccbba" . Now the same rules can be applied to this new string to grow the system even more:
“ccbba” (becomes “bababbcc”
bababbcc ” (becomes "bccbccbbbaba"
etc
Visualizing an L-System . )
L-Systems can be visualized in many different ways, but the most common method involves using a
turtle
Applying these rules to the seed will yield the string "ccbba"
. Now the same rules can be applied to this new string to grow the system even more:
“ccbba” (becomes “bababbcc”
bababbcc ” (becomes"bccbccbbbaba"
etcVisualizing an L-System . )
L-Systems can be visualized in many different ways, but the most common method involves using a
turtle
. First, you come up with an L-System as well as an arbitrary angle, A , to associate the L-System with. Then, you grow your L-System string by applying rules to the seed numerous times. To draw the L-System using the turtle you interpret every character of the grown string as an instruction to the turtle. Most L-Systems visualizers (including this one) use the following character set:
F: Move the turtle forward
” “: Turn the turtle A degrees clockwise – “: Turn the turtle A degrees counterclockwise
- ” “: Turn the turtle A degrees clockwise – “: Turn the turtle A degrees counterclockwise
“[“: Push the current position of the turtle onto a stack
Any other characters can be ignored by the turtle.
GIPHY App Key not set. Please check settings