From 8b75736c6f747ec4d01419ee6475e03feab398b9 Mon Sep 17 00:00:00 2001 From: RealBadAngel Date: Mon, 7 Jan 2013 01:35:05 +0100 Subject: L-Systems treegen update. --- doc/lua_api.txt | 101 +++++++++++++++++++++++++++++--------------------------- 1 file changed, 53 insertions(+), 48 deletions(-) (limited to 'doc') diff --git a/doc/lua_api.txt b/doc/lua_api.txt index 34738974a..b0c1b41a3 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -1073,57 +1073,62 @@ methods: ^ clear all objects in the environments - spawn_tree (pos, {treedef}) ^ spawns L-System tree at given pos with definition in treedef table - treedef={ - axiom, - string initial tree axiom - rules_a, - string rules set A - rules_b, - string rules set B - rules_c, - string rules set C - rules_d, - string rules set D - trunk, - string trunk node name - leaves, - string leaves node name - angle, - num angle in deg - iterations, - num max # of iterations, usually 2 -5 - random_level, - num factor to lower nr of iterations, usually 0 - 3 - thin_trunks, - boolean true -> use thin trunks - fruit_tree, - boolean true -> is a fruit tree - fruit - string fruit node name +treedef={ + axiom, - string initial tree axiom + rules_a, - string rules set A + rules_b, - string rules set B + rules_c, - string rules set C + rules_d, - string rules set D + trunk, - string trunk node name + leaves, - string leaves node name + leaves2, - string secondary leaves node name + leaves2_chance,- num chance (0-100) to replace leaves with leaves2 + angle, - num angle in deg + iterations, - num max # of iterations, usually 2 -5 + random_level, - num factor to lower nr of iterations, usually 0 - 3 + trunk_type, - string single/double/crossed) type of trunk: 1 node, 2x2 nodes or 3x3 in cross shape + thin_branches, - boolean true -> use thin (1 node) branches + fruit, - string fruit node name + fruit_chance, - num chance (0-100) to replace leaves with fruit node } - Key for Special L-System Symbols used in Axioms - G - move forward one unit with the pin down - F - move forward one unit with the pin up - A - replace with rules set A - B - replace with rules set B - C - replace with rules set C - D - replace with rules set D - a - replace with rules set A, chance 90% - b - replace with rules set B, chance 80% - c - replace with rules set C, chance 70% - d - replace with rules set D, chance 60% - + - yaw the turtle right by angle parameter - - - yaw the turtle left by angle parameter - & - pitch the turtle down by angle parameter - ^ - pitch the turtle up by angle parameter - / - roll the turtle to the right by angle parameter - * - roll the turtle to the left by angle parameter - [ - save in stack current state info - ] - recover from stack state info - - Example usage: spawn small apple tree - apple_tree={ - axiom="FFFFFAFFBF", - rules_a="[&&&FFFFF&&FFFF][&&&++++FFFFF&&FFFF][&&&----FFFFF&&FFFF]", - rules_b="[&&&++FFFFF&&FFFF][&&&--FFFFF&&FFFF][&&&------FFFFF&&FFFF]", - trunk="default:tree", - leaves="default:leaves", - angle=30, - iterations=2, - random_level=0, - thin_trunks=true, - fruit_tree=true, - fruit="default:apple" +Key for Special L-System Symbols used in Axioms + G - move forward one unit with the pen up + F - move forward one unit with the pen down drawing trunks and branches + f - move forward one unit with the pen down drawing leaves + A - replace with rules set A + B - replace with rules set B + C - replace with rules set C + D - replace with rules set D + a - replace with rules set A, chance 90% + b - replace with rules set B, chance 80% + c - replace with rules set C, chance 70% + d - replace with rules set D, chance 60% + + - yaw the turtle right by angle parameter + - - yaw the turtle left by angle parameter + & - pitch the turtle down by angle parameter + ^ - pitch the turtle up by angle parameter + / - roll the turtle to the right by angle parameter + * - roll the turtle to the left by angle parameter + [ - save in stack current state info + ] - recover from stack state info + +Example usage: spawn small apple tree +apple_tree={ + axiom="FFFFFAFFBF", + rules_a="[&&&FFFFF&&FFFF][&&&++++FFFFF&&FFFF][&&&----FFFFF&&FFFF]", + rules_b="[&&&++FFFFF&&FFFF][&&&--FFFFF&&FFFF][&&&------FFFFF&&FFFF]", + trunk="default:tree", + leaves="default:leaves", + angle=30, + iterations=2, + random_level=0, + trunk_type="single", + thin_branches=true, + fruit_chance=10, + fruit="default:apple" } - minetest.env:spawn_tree(pos,apple_tree) +minetest.env:spawn_tree(pos,apple_tree) Deprecated: - add_rat(pos): Add C++ rat object (no-op) -- cgit v1.2.3