*** empty log message ***
[lsystem3d.git] / README
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 on Debian GNU/Linux (Sid) only, but should compile fine on
16 other platforms without bigger modifications.
17
18 A fast computer with HW accelerated 3D would be nice.
19
20
21 Dependencies:
22
23 OpenGL
24 FOX toolkit
25 libxml++
26
27
28
29 USAGE
30 -----
31
32 Rendering window:
33
34 Left mouse button: Move model in z-plane
35 Middle mouse button: Zoom in/out
36 Right mouse button: Rotate around y-axis
37
38
39 Controller window:
40
41 Axiom: Initial rule
42 Rules: The L-system rules
43 Angle: Turn/pitch/roll angle
44 Depth: Depth of recursion
45 Diameter: Initial diameter of segment
46 Factor: For each recursion level, multiply segment diameter with this value
47 Generate: Generate the L-system
48
49
50 Rules:
51
52 F Walk forward, creating a segment
53 A-Z Replacement rule
54 A(0.33) Probability factor 0.33 for rule A
55 = Rule assignment
56 + Turn left
57 - Turn right
58 & Pitch down
59 ^ Pitch up
60 \ Roll left
61 / Roll right
62 | Turn around 180 degrees
63 [ Save state to stack
64 ] Load state from stack
65 { Create a planar surface
66 } Close a planar surface
67 f One vertex in a planar surface, specified CCW
68 ! Decrement segment diameter
69 ' Increment current index to color table
70 , Decrement current index to color table
71
72 Example:
73
74 F(0.33)=[+FL]F/[-FL]F!
75 F(0.33)=F[&FL]F!
76 F(0.34)=F/[-FL]&F!
77 L={,-f++f-|-f++f-'}