💾 Archived View for botond.online › en › generative › l-systems.gmi captured on 2024-05-26 at 14:42:03. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-12-03)
-=-=-=-=-=-=-
Lindenmayer systems or L-systems are a formal language developed by Aristid Lindenmayer, a Hungarian theoretical biologist, to model various biological phenomena. They can be used to create fractals, recursive and repeating patterns. The Wikipedia article is a very thorough and interesting introduction to them:
The following images and videos have been created using my custom-made L-system renderer I want to release as open source one day, but I never have the time to finish.
The H-tree is a classic space filling curve. The one in this picture has 89° angles instead of the traditional 90°, making it more interesting visually.
This video demostrates that just by continuously changing the angle of an H-tree, we can generate many interesting fractal shapes - including the Dragon Curve, one of the most famous fractals.
H-tree transformation (MP4, 26.2 MB)
The following stills from the video show some of these fascinating shapes and their corresponding angles.
H-tree at 45° - the Dragon Curve
H-tree at 120° - what I call the Pine Fractal
By taking two branches and growing two new, slightly shorter branches from them, and repeating this process recursively, we can create the simplest fractal, a fractal tree.
A simple fractal tree - angle: 20°
But if we gradually increase the angle, we can turn this seemingly simple shape into more intricate fractal patterns which include the famous Lévy C Curve and our old friend, the H-tree.
Fractal tree transformation (MP4, 19.58 MB)
Enjoy the variety of these structures:
Fractal tree at 45° - the Lévy C Curve
Fractal tree at 90° - the H-tree
L-systems can be used to draw structures that closely resemble natural shapes. See for example this "parsley":
Growing parsley (MP4, 24.9 MB)
Another interesting one is this "weed":
And finally, one of my all-time favorites, the Infinite Spiral: