startshape forest
rule forest 0.5 {
forest { x 1 y 0.01 }
forest { x -1 }
}
rule forest 0.5 {
forest { x 1 y -0.01 }
forest { x -1 }
}
rule forest 4.5 {
forest { s 0.8 }
}
rule forest {
forest { s 1.25 }
}
rule forest 0.03 {
forest { x 1 }
forest { x -1 }
tree { }
}
rule tree {
tree1 { r 85 }
}
rule tree {
tree2 { r 95 }
}
rule tree1 {
SQUARE { s 0.2 }
SQUARE { s 0.2 x 0.2 }
SQUARE { s 0.2 x 0.4 }
SQUARE { s 0.2 x 0.6 }
SQUARE { s 0.2 x 0.8 }
SQUARE { s 0.1 b 1 x -0.1 }
SQUARE { s 0.1 b 1 }
SQUARE { s 0.1 b 1 x 0.1 }
SQUARE { s 0.1 b 1 x 0.2 }
SQUARE { s 0.1 b 1 x 0.3 }
SQUARE { s 0.1 b 1 x 0.4 }
SQUARE { s 0.1 b 1 x 0.5 }
SQUARE { s 0.1 b 1 x 0.6 }
SQUARE { s 0.1 b 1 x 0.7 }
SQUARE { s 0.1 b 1 x 0.8 }
SQUARE { s 0.1 b 1 x 0.9 }
tree1 { x 1 r 1 s 0.95 b 0.01 }
}
rule tree1 0.3 {
SQUARE { s 0.2 }
tree2 { }
tree1 { r -20 s 0.7 b -0.5}
}
rule tree1 0.05 {
CIRCLE { }
tree1 { }
}
rule tree2 {
SQUARE { s 0.2 }
SQUARE { s 0.2 x 0.2 }
SQUARE { s 0.2 x 0.4 }
SQUARE { s 0.2 x 0.6 }
SQUARE { s 0.2 x 0.8 }
SQUARE { s 0.1 b 1 x -0.1 }
SQUARE { s 0.1 b 1 }
SQUARE { s 0.1 b 1 x 0.1 }
SQUARE { s 0.1 b 1 x 0.2 }
SQUARE { s 0.1 b 1 x 0.3 }
SQUARE { s 0.1 b 1 x 0.4 }
SQUARE { s 0.1 b 1 x 0.5 }
SQUARE { s 0.1 b 1 x 0.6 }
SQUARE { s 0.1 b 1 x 0.7 }
SQUARE { s 0.1 b 1 x 0.8 }
SQUARE { s 0.1 b 1 x 0.9 }
tree2 { x 1 r -1 s 0.95 b 0.01 }
}
rule tree2 0.3 {
SQUARE { s 0.2 }
tree1 { }
tree2 { r 20 s 0.7 b -0.5}
}
rule tree2 0.05 {
CIRCLE { }
tree2 { }
}
startshape forest
background { hue 200 sat 0.2 b -0.7 }
// forest
rule forest 4.5 {
forest { s 0.8 } }
rule forest {
forest { s 1.25 } }
rule forest 0.5 {
forest { x 1 y 0.03 }
forest { x -1 } }
rule forest 0.5 {
forest { x 1 y -0.03 }
forest { x -1 } }
rule forest 0.03 {
forest { x 1 }
forest { x -1 }
seed { } }
// seeds
rule seed {
seed { }
seed { s 1 0.9 } }
rule seed {
tree { y 0.5 r 85
sat 0.2 hue 50 |hue 90 b 0.3 } }
rule seed {
tree { y 0.5 r 85
sat 1 hue 30 |hue 70 b 0.5 } }
rule seed {
tree { y 0.5 flip 180 r 95
sat 0.5 hue 30 |hue 50 b 0.3 } }
rule seed {
tree { y 0.5 flip 180 r 95
sat 1 hue 50 |hue 70 b 0.5 } }
rule seed {
tree { y 0.5 r 85 s 0.8 1
sat 0.2 hue 50 |hue 90 b 0.3 } }
rule seed {
tree { y 0.5 r 85 s 0.9 1
sat 1 hue 30 |hue 70 b 0.5 } }
rule seed {
tree { y 0.5 flip 180 r 95 s 0.9 1
sat 0.5 hue 30 |hue 50 b 0.3 } }
rule seed {
tree { y 0.5 flip 180 r 95 s 0.8 1
sat 1 hue 50 |hue 70 b 0.5 } }
// trees
rule tree {
trunc { }
tree { x 1 r 1 s 0.9
hue 0.05| sat 0.01 b 0.05 } }
rule tree 0.15 {
tree { flip 180 }
tree { r -20 y -0.1 s 0.5 0.85
b -0.2 hue -0.03| sat 0.4 } }
rule tree 0.15 {
tree { flip 180 }
tree { r -20 y -0.1 s 0.6 0.85
b -0.2 sat 0.2 } }
rule tree 0.05 {
tree { flip 180 }
tree { r -10 y -0.1 s 1.01
b 0.3 hue 0.1| sat -0.1} }
rule tree 0.01 {
tree { |hue 10 } }
// trunc
rule trunc 2 {
SQUARE { s 1.1 0.2 b -0.7 sat -0.5 }
SQUARE { s 1.1 0.1 b 0.8 sat -0.2 } }
rule trunc {
SQUARE { s 1.1 0.2 b -0.6 sat -0.5 }
SQUARE { x -0.25 s 0.55 0.1 b 0.8 sat -0.5 }
SQUARE { x 0.25 s 0.55 0.1 b 0.9 } }
rule trunc {
SQUARE { s 1.1 0.2 b -0.6 sat -0.5 }
SQUARE { x -0.25 s 0.55 0.1 b 0.9 }
SQUARE { x 0.25 s 0.55 0.1 b 0.8 sat -0.5 } }
// leaf
rule tree 0.1 {
leaf { }
tree { } }
rule leaf { drawleaf { } }
rule drawleaf { CIRCLE { hue 70 sat -0.1 b 0.1 } }
rule drawleaf { CIRCLE { hue 50 sat 0.1 } }
rule drawleaf 0.05 { CIRCLE { hue -50 sat 1 b 1 } }
// leaf : waiting rule artifact
rule leaf { waitleaf { } }
rule waitleaf { waitleaf { } }
rule waitleaf 0.02 { drawleaf { } }