L-Breeder Help: basic help

# ---- Help on the program ----

## The Main Breeding Window:

The L-Breeder program displays graphical representations of L-systems (L-system "forms"). The parent L-system form is displayed in green, and it is surrounded by its children, each of which may possess different mutations to their L-system. L-system forms displayed on blue backgrounds represent children who only differ from the parent form due to parametric mutations, whilst forms displayed on a yellow background represent children who differ from the parent due to algorithmic mutations.

If no L-system file is selected at startup, the initial form shown is a Pythagoras tree. Different L-systems can be loaded into the program by selecting "Open" from the file menu.

If any one of the forms is needed to be examined in closer detail, it can be "maximised" to fill the whole window by selecting it (clicking on it), then selecting "View Detailed" from the view menu. Reversion to the normal view occurs if "View Detailed" is selected again.

## Moving the L-system forms around:

The graphical representations of the L-systems are displayed in 3D space. These forms are centred around the middle of an imaginary box enclosing the entire form. The forms can be rotated in space about this centre, either individually or jointly. This is mainly done using the mouse, as detailed in the summary of commands. It is also possible to zoom in on and out from the L-system forms. More complex navigation in space, such as shifting sideways, or viewing from the inside of the form, outwards, cannot be accomplished in the L-Breeder program, but the 3D form can be exported in several different file formats such as DXF by selecting "export 3D form" from the file menu, and then viewed in the 3D visualisation program of your choice.

If you find that you have zoomed out too much and cannot see the L-system form on screen, or you have zoomed in too much, and have a screen entirely filled with a small part of the L-system form, you can select a zoom factor that should fit the entire form into the screen by selecting "Zoom to Fit" from the view menu.

## Breeding from an L-system form:

Sucessive rounds of breeding (otherwise known as artificial selection) form the basis for creating interesting L-system forms. Any L-system can be selected as the parent for a new generation of mutant children by double-clicking on its graphical representation, or by selecting it, then choosing "Breed" from the Edit menu. This will generate a set of new parametric and algorithmic mutants derived from the selected form. The new mutants will assume the same viewpoint and scale as their parent.

Normally, selecting a new parent will also invoke an animation of the selected form moving to occupy the parental position. However, if you are using a slow computer, this animation can be turned off by checking the "No Animation" option on the settings menu.

## Genetic engineering:

The L-system forms that are displayed on screen are generated from a series of lines of text. These lines are parsed into a single text string by a simple algorithm as described in "Parsing the L-system". The parsed string is then interpreted as specifying commands to a "turtle" (a point moving in 3D space), as described in "Turtle Commands".

The lines of text that generate the L-system form seen on screen can be thought of as the "genetic code" or genotype of the L-system form, with the 3D form as the L-system phenotype. Mutations are implemented by changing, adding, or deleting characters in these lines of text, as described in the help file "Mutations". It is possible to change the text yourself, which amounts to a sort of Genetic engineering of the L-system form.

### The genetic engineering window

To edit the L-system text, you can either select an L-system form and then select "Genetic Engineering" from the Edit menu, or, if you have a mouse with more than one button, you can right-click on the appropriate L-system form. This brings up a window with the L-system text, which can be edited at will, or replaced with text from a file by clicking on the "Load from file" button. If you are editing the text, you will almost certainly need to know how the characters are translated to 3D drawing commands, which is described in help on L-systems (especially see the "Turtle Commands" section). After changing the text, displaying the modified Lsystem is achieved by clicking on the "Update" button. The genetic engineering window can be hidden by selecting "Genetic Engineering" from the Edit menu again, or by right-clicking anywhere on the main window again.

A basic tutorial in creating your own L-system forms is available here.

## Summary of basic commands:

Intention | Action to take | Description
Moving the L-system forms around | Mouse click: | Select an L-system form.
Mouse drag: | Rotate the selected form in space.
Shift + mouse click: | Unite the viewpoint for all the forms, that is, the parent and all the child forms will be displayed from the same point in space as the form which is clicked upon.
Shift + mouse drag: | Rotate all the forms in unison.
Up-arrow key or down-arrow key: | Slowly zoom in or out on the selected form
Shift + up-arrow key or shift + down-arrow key: | Quickly zoom in or out on the selected form
Breeding | Mouse double-click or select "Breed" from the edit menu | Breed from a selected individual
Genetic engineering | Click with the right mouse button (if available), or select "Genetic Engineering" from the edit menu | Toggle the genetic engineering window

Note: In the case of mice with more than one button, where a mouse click is specified in the above actions, the left mouse button is assumed unless stated otherwise.