Procedural models (Kolam fractals)
In villages in the South of India, women decorate courtyards in front of their home with a traditional designs called Kolam. It is not clear what kind of thought process women in Tamilnadu follow when drawing Kolam patterns. However, it is amazing to see fractals in more than a 5000 years old folk art which is still practiced today. These patterns can be easily captured with L-system productions with turtle geometry interpretation for drawing lines. In order to render the curvature of original design, the consecutive positions of the turtle are used as a control points for a B-spline approximation. These Kolam patterns were implemented with LPFG as a part of my course work with Dr. Prusinkiewicz at the University of Calgary.
The world around us is not made of perfect geometric objects. Clouds are not spheres. Mountains are not cones. A tree is not a cylinder. Yet Euclidean geometry describes only ideal shapes: spheres, circles, cubes, smoothly varying functions. Fractal geometry is the geometry of the natural world, capable of describing complex and non-ideal objects. In nature, and in complicated mathematical objects, there is often self-similarity, or the existence of small sub-objects that resemble the larger object. The key property of fractals is their self-similar nature. In other words, a fractal can be broken down into smaller objects which are themselves fractals. Programming fractals is much easier with L-systems (please refer my Presentation Slides for introduction to L-systems). The central concept of L-systems is that of rewriting. In general, rewriting is a technique for defining complex objects by successively replacing parts of a simple initial object using a set of rewriting rules or productions.