Example Projects for GroIMP
This page lists a couple of example projects. They can be opened within GroIMP
by clicking on the hyperlinks. They will pop up in a new window.
In the new window, you will see the RGG toolbar with two menus for the
activation of model dynamics: The left one invokes rules once, the right one,
where the items are prefixed with "Run", invokes them repeatedly. The
"Stop" button stops a repeated invocation of rules.
- Fractals
Koch curve
A classical example of L-systems.
Tree with sympodial branching
This simple L-system models a tree with sympodial branching. The example is based on an example in the book "The Algorithmic Beauty of Plants" of Przemyslaw Prusinkiewicz and Aristid Lindenmayer.
- FSPM
FSPM model
This model simulates a mixed-species beech and spruce forest and competition for light. It was presented at the FSPM07 (5th International Workshop on Functional Structural Plant Models) in Napier, NZ.
Simple Rapeseed
A structural model of a simple rapeseed plant.
Tree based on pipe model of branch width
This L-system models the branching width of a tree based on the pipe model.The example is a translation of the example "tree-shedding" of the L-Studio software.
Tree, branch lengths defined by a function of height
A user-defined function is used to specify the branch length at a given tree height.
Bush
A bush is modelled based on an example in the book "The Algorithmic Beauty of Plants" of Przemyslaw Prusinkiewicz and Aristid Lindenmayer. This example makes use of some of GroIMP's advanced graphics features.
Tree with NURBS surfaces
Stem and branches of this tree are modelled as skinned NURBS surfaces, using the Surface
turtle command as a generalized cylinder. This is another example of GroIMP's advanced graphics features.
Globally-sensitive plants
ABC model of flower morphogenesis
The ABC model predicts flower morphogenesis on the basis of a regulatory network. This simulation produces the wildtype and mutants.
Barley Breeder
- Technical Models
Virtual Laser Scanner
Demonstrates the use of the virtual laser scanner to produce a point cloud of some object. The point cloud is then visualised using the PointCloud primitive.
GroPhysics
The GroPhysics plugin uses JBullet for physics simulation. This example demonstrates how this can used to create a growing tree affected by gravity.
- Simple rate assignment
A simple example demonstrating usage of the rate assignment operator.
ODEs and the rate assignment operator
The example shows the usage of the rate assignment operator :'= to specify the growth equations. Carbon assimilates are produced in the leaves (green spheres) and are transported via diffusion through the whole plant. For each internode, part of its carbon is converted into length.
Inhibitor/activator example
An Inhibitor/activator example without using the rate assignment operator.
PointCloud primitive
This example demonstrates the use of the PointCloud primitive.
City Generator
A city generator designed for the seminar "Artificial Growth Processes" held at BTU Cottbus.
MTG-Example
An example for loading, visualizing and modifying Multiscale Tree Graph (MTG) data in GroIMP.
Sierpinski triangle as graph
An implementation of the Sierpinski triangle as graph with 3D visualization for the AGTIVE 2007 conference.
- Complex number example and stream output
Demonstrates use of operator overloading by implementation of a complex number class. There is a small explanation that describes how to specify operator overloads. Also demonstrates and explains how to use operator overloading to implement stream output operators similar to those in C++.
NURBS demo
NURBS demo 2
Water Surface
VRML Grid Builder
A simple example demonstrating usage of the VRML Grid Builder.
Height field
- Artificial Life
Boids
Demonstrates animation of virtual birds. The boids (green) follow the master (red) while staying in a group and keeping distance to their neighbours.
Carrot field with rodent
This simplistic model of a carrot field contains a set of carrots that compete for light. A water vole (Arvicola terrestris, a rodent) digs a burrow system and feeds on carrot roots.
Game of Life
Conway's famous Game Of Life, implemented using XL.
Ant simulation
Ants are a popular subject in Artificial Life. A simplistic simulation can be implemented easily.
Dawkin's biomorphs
The implementation of Richard Dawkin's biomorphs shows how genetic operators can be specified within XL.
- Others
Ludo Game
An implementation of the Ludo game ("Mensch Ärgere Dich Nicht") for the AGTIVE 2007 conference.
How to create a nerve cell
Globally-sensitive lines
Green and red growing lines that perform collision avoidance.
Helicopter
Demonstration of animated objects, for instance a helicopter.
Molecules
Atoms in a 2D-box, floating around and building molecules.
Double-star system with wooded planet
This model shows a double-star system, according to Newton's gravitational law. A wooded planet orbits the double-star.
A Smart Line
To demonstrate how you can use the class AvoidIntersection. A line grow in a certain direction and tries to avoid intersection with other volumetric objects by changing the direction of growth.
Snooker
An implementation of the snooker game.
Veach Room
A standard reference room to test the accuracy of rendering.