next up previous contents
Next: Implementation of Advanced L-systems Up: Methods Previous: Language Issues

System Structure

The implemented software system reads L-system rules as input, and renders vivid three dimensional plant-growing animation on the web page as output.

The system consists of several Java classes. The class Growing is the control module of the whole system. It reads in an L-system definition from a text file and the geometry parameters from an html file to build the representation of the L-system in Java, known as Lsystem. Lsystem uses a class called LsystemRule to hold L-system rules and simulate the random choosing of the stochastic rules. In the main loop of the Growing class, a geometric model is created according to the class Model, capable of doing perspective projection, shading, and shadowing for geometry objects. Next, a string is generated from the Lsystem class and sent to the geometry interpreter class, Interpreter. The Interpreter class creates a geometry model of the plant as its output. Finally, the geometry model is rendered to screen by the Model class.

The overall data structures and data flow are illustrated in Figure gif.

  
Figure 1: Data structures and data flow



Tong Lin (tlin2@cs.umbc.edu)