Skip to content

Westerbay/L-Systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lindenmayer Systems - University Project (JAVA)

This project is an L-System (Lindenmayer System) interpreter developed as a university project during my second year of studies at the University of Caen. L-Systems are formal systems used to model plant growth, create fractals, and generate algorithmic patterns. This interpreter takes user-defined L-System rules and axioms, generating the resulting character sequence for a given number of iterations, which can then be visualized graphically.

Table of Contents

Introduction to L-Systems

L-Systems were developed by Hungarian biologist Lindenmayer to describe the growth of biological forms, like algae or ferns. An L-System consists of:

  • Axiom: An initial string of characters.
  • Production Rules: A set of rewrite rules defining how each symbol in the string is transformed from one iteration to the next.
  • Rotation Angle: Used for graphical visualization with defined angles at each iteration.

L-Systems are commonly used for generating fractals and simulating biological structures.

Features

  • L-System Interpretation: Supports user-defined rules and axioms to generate L-System sequences.
  • Graphical Visualization: Uses Java's graphical capabilities to visualize the generated L-System patterns.
  • Customization: Users can define rules, axiom, rotation angle, and number of iterations.

Example

Here is a simple example of an L-System representing a 3D flower:

3D Flower

Authors

Developed by Wester