Tuesday, November 13, 2012

Algorithmic Botany - L(indenmayer)-systems

An L-system or Lindenmayer system is a parallel rewriting system, namely a variant of a formal grammar, most famously used to model the growth processes of plant development, but also able to model the morphology of a variety of organisms.

There is a book on "The Algorithmic Beauty of Plants" by Przemyslaw Prusinkiewicz and Aristid Lindenmayer. You can find it here:

http://algorithmicbotany.org/papers/#abop


L-System Structure:
The recursive nature of the L-system rules leads to self-similarity and thereby fractal-like forms are easy to describe with an L-system

Example: Fractal plant

variables : X F
constants : + − [ ]
start  : X
rules  : (X → F-[[X]+X]+F[+FX]-X), (F → FF)
angle  : 25°
Here, F means "draw forward", - means "turn left 25°", and + means "turn right 25°". X does not correspond to any drawing action and is used to control the evolution of the curve. [corresponds to saving the current values for position and angle, which are restored when the corresponding ] is executed.




other CG Examples:

'Weeds', generated using an L-system in 3D.


L-system trees form convincing models of natural patterns

for further information see: https://en.wikipedia.org/wiki/L-system

No comments:

Post a Comment