9469555e |
1 | DESCRIPTION |
2 | ----------- |
3 | |
4 | LSystem3d is a experimental Lindenmayer System generator with 3d capabilities, |
5 | whose main goal is to generate all kinds of plants or whatever fractal |
6 | l-system structures the user desires. For now, LSystem3d is highly under |
7 | development and is considered alpha, that is, lots of things are missing and |
8 | it will probably not work 100% accurate. |
9 | |
10 | |
11 | |
12 | REQUIREMENTS |
13 | ------------ |
14 | |
15 | Currently tested in Debian GNU/Linux (Sid) only, but should compile fine on |
16 | other platforms without bigger modification. |
17 | |
18 | Necessary libs: |
19 | |
20 | OpenGL |
21 | GLU |
22 | GLUI User Interface Library |
23 | GLUT (freeglut) |
24 | libxml++ |
25 | glibmm |
26 | |
27 | |
28 | |
29 | USAGE |
30 | ----- |
31 | |
32 | Keys: |
33 | |
34 | Esc quit |
35 | + zoom in |
36 | - zoom out |
37 | y rotate around the y-axis |
38 | Up move camera up |
39 | Down move camera down |
40 | Left move camera left |
41 | Right move camera right |
42 | PageUp move camera forth |
43 | PageDown move camera back |
44 | |
45 | |
46 | Rules: |
47 | |
48 | = name/rule separator |
49 | A-Z rewrite operator, step forward |
50 | + turn left |
51 | - turn right |
52 | & pitch down |
53 | ^ pitch up |
54 | \ roll left |
55 | / roll right |
56 | | turn around 180 degrees |
57 | [ save state to stack |
58 | ] restore state from stack |
59 | { first vertex of a filled surface |
60 | } last vertex of a filled surface |
61 | f one vertex of a filled surface |
62 | ! decrement diameter of segment |
63 | |
64 | |
65 | Example: |
66 | |
67 | The GUI input |
68 | |
69 | Axiom: A |
70 | Rule #1: A=A/[!+A&A]/A |
71 | Angle: 30.0 |
72 | Iterations: 4 |
73 | |
74 | will render a simple l-system and create the xml-structure |
75 | |
76 | <?xml version="1.0"?> |
77 | <lsystem> |
78 | <axiom>A</axiom> |
79 | <rule name="A">A/[!+A&A]/A</rule> |
80 | <angle>30.0</angle> |
81 | <iterations>4</iterations> |
82 | </lsystem> |
83 | |
84 | and save it to the file named "lsystem.xml" when quitting. The same file will |
85 | be initially loaded every time LSystem3d is started. |