StochasticPlant
by David Dostal
Short link: http://malsys.cz/g/krKcGBRN
Comments
comments powered by DisqusSource code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | fun randomize (number, maxDistance) { return number + random(0, maxDistance) -random(0, maxDistance); } lsystem StochasticPlant { let angle = 30; let angleRandomness = 20; let length = 10; let lengthRandomness = 10; set iterations = 7; set initialAngle = 90; set symbols axiom = F; set tropismVector = {0, -1, 0}; set tropismCoefficient = 0.05; rewrite F to F[+F]F[-F]F weight 0.33 to F[+F]F weight 0.33 to F[-F]F weight 0.34; interpret F as DrawForward(randomize(length, lengthRandomness)); interpret + as TurnLeft(randomize(angle, angleRandomness)); interpret - as TurnLeft(-randomize(angle, angleRandomness)); interpret [ as StartBranch(); interpret ] as EndBranch(); } process StochasticPlant with SvgRenderer; |
Thumbnail extension
1 2 | process StochasticPlant with SvgRenderer set iterations = 4; |