Deborah R. Fowler

L-systems

Updated April 14 2019 Updated March 19 2026
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

Koch Snowflake Koch Island

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
MISSING IMAGE
Also described in python with turtle: http://interactivepython.org/courselib/static/pythonds/Recursion/pythondsSierpinskiTriangle.html