LSystem

AttachmentSize
LSystem_2003-05-11.zip247.94 KB

LSystem is a Java application that I developed over the course of a couple years, with a great deal of interface coding help from Joseph Smarr. It's a simple program for defining and rendering Lindenmayer Systems, a kind of fractal invented for modelling plant growth. Here you'll find a couple of animations and many pictures, some quite beautiful, of L-Systems my program has rendered.

Source code is now available! I have spent some time cleaning up the code and pruning the lame presets. Everything should work now.

Renders, Screenshots, & Animations!

Update: After some user feedback, I decided to take another look at the horribly inefficient inner loop for calculating the iterations. I switched it over to using linked lists and the corresponding appropriate Java Collections API stuff, and it's just incomparably faster. Actually, I can compare it. Rendering 22 iterations of the dragon fractal has come down from 100+ hours to about two minutes. Most of that is render time, not iteration.

Several parameters that had been half-implemented are now fully functional. So for angle, width, and length, you can control each of the base, increment, and scale parameters. The symbol set is getting ugly, so some of the new symbols may change in the future. This render is an example of what you can do with some of the new symbols. Also, the program now runs with a maximum heap size of 1GB to avoid the OutOfMemoryErrors which are so much easier to run into now :).

Tags: