LPy-project/populus_nigra_italica.lpy
2019-05-12 13:54:05 +00:00

30 lines
803 B
Plaintext

import random
a = 50
def Start():
#random.seed(150)
pass
Axiom: _(0.3)@GsG(0.5)A(1,1.0)
derivation length: 50
production:
A(x,k) :
if x >= a-20:
produce [-(a-x)F(1,0.05+0.25/k)C(1,k)]/(75)F(0.7,0.05+0.25/k)A(x+1,k+0.1)
elif x <= 5:
produce F(0.7,0.05+0.25/k)A(x+1,k+0.1)
else:
produce[-(30)F(1,0.05+0.25/k)B(1,k)]/(75)F(0.5,0.05+0.25/k)A(x+1,k+0.1)
B(x,k):
if x <= 5:
r1 = random.random()
r2 = random.random()
produce [^(r1*50)F(1,0.05+0.25/k)-(20);Leaf(1)][&(r2*50)F(1,0.05+0.25/k)-(20);Leaf(1)]F(1,0.05+0.25/k)[-(20);Leaf(1)]B(x+1,k+1)
C(x,k):
if x <= 5:
r1 = random.random()
r2 = random.random()
produce [^(r1*50)F(1,0.05+0.25/k)-(20);Leaf(1)]F(1,0.05+0.25/k)[-(20);Leaf(1)]C(x+1,k+1)
Leaf(x):
produce ~l(1)
interpretation:
endlsystem