1 |
root |
1.1 |
/* this is a c-style comment */ |
2 |
|
|
|
3 |
|
|
// this is another comment |
4 |
|
|
// if you want to have two "/" back to back, |
5 |
|
|
// just seperate them with a space |
6 |
|
|
|
7 |
|
|
/* |
8 |
|
|
* This is the coordinate system: |
9 |
|
|
* |
10 |
|
|
* y |
11 |
|
|
* | |
12 |
|
|
* | z |
13 |
|
|
* | / |
14 |
|
|
* |/ |
15 |
|
|
* *------x |
16 |
|
|
* |
17 |
|
|
* turtle starts heading up (y axis) |
18 |
|
|
* + turn left (z) |
19 |
|
|
* - turn right (z) |
20 |
|
|
* ^ pitch up (x) |
21 |
|
|
* & pitch down (x) |
22 |
|
|
* / rotate right (y) |
23 |
|
|
* \ rotate left (y) |
24 |
|
|
* |
25 |
|
|
* this is a bit illogical, but it makes 2d and 3d compatible (using + and -) |
26 |
|
|
* |
27 |
|
|
* full rules have the form |
28 |
|
|
* module_name"("parameters...")" ":" constraint_expression "=>" expansion"," iterations ";" |
29 |
|
|
* |
30 |
|
|
* where "(parameters...)", ": constraint_expression", "expansion" and ", iterations" |
31 |
|
|
* are optional parts, i.e. |
32 |
|
|
* |
33 |
|
|
* A => ; |
34 |
|
|
* |
35 |
|
|
is a valid rule, which unconditionally removes all occurences of A. |
36 |
|
|
*/ |
37 |
|
|
|
38 |
|
|
seed(n) => figure(n), 1; |
39 |
|
|
|
40 |
|
|
//seed(n) => attr(distance,3) hexagonal_gosper(n), 1; |
41 |
|
|
//seed(n) => simple_tree(n), 1; |
42 |
|
|
//seed(n) => roseleaf(n),1; |
43 |
|
|
//seed(n) => attr(distance,5) polygon, 1; |
44 |
|
|
|
45 |
|
|
|