ELS (short for Extended L-System) is a program I developed for my independent project, for the MSc(IT) at HKUST, which was under Dr. David Rossiter's supervision. The target is to improve L-System's capability, making it can represent colorful curves, instead of just straight black lines.

New fetures include:

  1. you can specify the color for each line;
  2. you can shape the basic lines to curve;
  3. you can design an animation based on the graphics, by setting the parameters.

The Original L-System

L-System is short for Lindenmayer System, it is proposed by the biologist Aristid Lindenmayer in 1968. The original purpose was to provide a methodology to describe the development of organisms formally, and to illustrate the neighborhood relationships between plant cells. Later on, this system has been introduced into computer graphics, to generate fractals and other graphical structures.

In brief, L-system can be regarded as a method for mapping string to graphics. It firstly generates the strings, which depict figures, and subsequently interprete the strings to draw the corresponding pictures, so, each of the symbols composing the strings can be considered as a graphical command.

For further details of original L-System, please refer to the following links:


The program is developed with C++, based on WIN32 API. So it can run on Windows 98 and later versions of windows.

You are welcome to download it and use it for free:

click here to download the program

After opening the zip file, you will see two files, as shown here:


the lib.dat file stores the data of the examples. Please keep both files in the same directory.

If you are interested, you can download the C++ source code freely as well:

click here to download the source code