music: “The Slackers”
Few images produced with RABBIT 0.2:
In Brief: LSystem is a parallel string rewriting system. A string rewriting system consists of an initial string, called the seed, and a set of rules for specifying how the symbols in a string are rewritten as (replaced by) strings. Let’s have a look at a simple LSystem:
A = AB
B = BA
The LSystem starts with the seed ‘A’ and iteratively rewrites that string using the production rules. On each iteration a new word is derived.
n is the derivation length = the number of iterations
All these words form the language of the LSystem.
Since their original formulation, L-systems have been adapted to modelling a wide range of phenomena including:
There exist different types of LSystems: deterministic, stochastic, context-free, context-sensitive, parametric, timed-depending on the rules and the way they are applied by the LSystem.
For more info about LSytems, we strongly suggest the following resources:
The derivation strings of developing L-systems can be interpreted as a linear sequence of instructions (with real-valued parameters in the case of parametric L-systems) to a ‘turtle’, which interprets the instructions as movement and geometry building actions. The historical term turtle interpretation comes from the early days of computer graphics, where a mechanical robot turtle (either real or simulated), capable of simple movement and carrying a pen, would respond to instructions such as ‘move forward’, ‘turn left’, ‘pen up’ and ‘pen down’. Each command modifies the turtle’s current position, orientation and pen position on the drawing surface. The cumulative product of commands creates the drawing.
RABBIT 0.2 provides a 3d Turtle Interpreter: the “turtle” moves and draws graphics in 3d. The TurtleInterpreter could be used by itself or together with the LSystem component giving you the opportunity to explore new designs.
Feel free to comment here !