Deborah R. Fowler
L-systems
Posted on Aug 2015
Updated on April 14 2019 to include Sierpinski's Triangle
L-systems are named after Dr. Aristid Lindenmayer. Dr. Lindenmayer created a formal grammar to
describe how plants grow. It is a parallel rewriting system developed in the 60's. Dr. Lindenmayer.
Dr. Lindenmayer, a renowed botanist/biologist collaborated with Dr. Przemyslaw Prusinkiewicz.
Dr. Prusinkiewicz, a Computer Science professor received the 1997 SIGGRAPH Computer Graphics
Achievement Award for his work.
There are a number of sites describing L-systems and they have become a part of Sidefx's Houdini software.
The Algorithmic Beauty of Plants is an excellent place to start if you want to learn more aobut L-systems. I would also
encourage you to visit algorithmicbotany.org to study the continuing research.
There are also excellent descriptions in Sidefx's documentation regarding the use of L-systems in Houdini.
You will notice if you have not explored L-systems, that the symbols have directions for directing a turtle to move and draw (turtle graphics). The list of symbols is fairly extensive and it takes time to become familiar with how to control L-systems.
L-systems can be used for plant modeling and a variety of other uses. Below are two fractals produced in Houdini by expressing the premise and rules for their self similar pattern.
Mouse over the images to see generation animation
A very brief introduction to L-systems also exists in video form which I recorded with Houdini 10 (but it's all still valid).
Here is another example - Sierpinski's Triangle:
As described on http://mathworld.wolfram.com/SierpinskiSieve.html
Premise: +(90) FXF - - FF - - FF
Rules:
F = FF
X= - - FXF + + FXF + + FXF - -
Angle is 60
Also described in python with turtle:
http://interactivepython.org/courselib/static/pythonds/Recursion/pythondsSierpinskiTriangle.html