GroIMP understands relational growth grammars written in the
language XL, which is based on Java, see
www.grogra.de and
the XL
language speficication. At the web page, there exist some
example XL files, which you should download in order to have a
starting point. Or, if you have installed the Examples-plugin,
just select the menu File/Show Examples. A simple, classical
example is the Koch curve whose XL source is shown here, you may
create the file Koch.xl
by Copy&Paste.
import de.grogra.rgg.*; import de.grogra.lsystem.*; public class Koch extends RGG { public void derivation() [ Axiom ==> F(10) RU(120) F(10) RU(120) F(10); F(x) ==> F(x/3) RU(-60) F(x/3) RU(120) F(x/3) RU(-60) F(x/3); ] }
You can open an XL file like the one shown file via the menu item File/Open, this creates a new project containing the XL file. For a good RGG modelling workflow, you should switch to the RGG panel layout in the menu Panels/Set Layout. This brings up the most frequently used panels: RGG toolbar, 3D view, text editor, attribute editor, file exporer, meta object browser, message panel, and XL console.
The meta object browser displays objects which have an influence
on the scene, but which are not part of the material scene. The
RGG object is an example of such an object, and if you open an XL
file containing an RGG class, an instance of this class will be
created automatically (if the file can be compiled successfully)
and inserted into the list of meta objects. By a double click on
the RGG object, its editable attributes (the public fields which
are declared in its class and are annotated by
de.grogra.annotation.Editable
) are shown in the
attribute editor.