74 lines
2.6 KiB
Plaintext
74 lines
2.6 KiB
Plaintext
|
#ignore + - \ / ^ &
|
||
|
|
||
|
|
||
|
#axiom
|
||
|
C(1,3,0)F(0,1)F(0,1)F(0,1)F(0,1)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)/(137.5)[+(45)G]F(0,1)G
|
||
|
# stworzenie przyciętego drzewka, pień plus zalążki gałęzi ułożone w filotakszji spiralnej (czyli wiosna)
|
||
|
|
||
|
|
||
|
#rules
|
||
|
|
||
|
C(a,b,t) : t>=100 -> C(a,4,t+1)
|
||
|
# okreslenie ilosci kroków do osiągnięcia których drzewo będzie rosło (czyli ilość czasu do końca lata), po jego osiagnieciu wystawina jest wartość "4", która nie odpowiada za wysyłanie sygnału wzrostu
|
||
|
|
||
|
C(a,b,t) > F(x,w) : b<3 -> C(a,b+1,t+1)
|
||
|
# zwiększanie czasu o 1 w każdym kroku
|
||
|
|
||
|
C(a,b,t) > F(x,w) : b==3 -> #stochastic
|
||
|
p=1 C(1,0,t+1)
|
||
|
p=2 C(2,0,t+1)
|
||
|
p=2 C(3,0,t+1)
|
||
|
#stochastic end
|
||
|
# zwiększanie czasu o 1 w każdym kroku, wybieranie typu sygnału wzrostu
|
||
|
|
||
|
C(a,b,t) < F(x,w) : b==3 -> F(a,w)
|
||
|
F(x,w) < F(y,w1) : x>0 -> F(x,w1)
|
||
|
F(x,w) : x>0 -> F(0,w)
|
||
|
F(x,w) < G : x==1 -> F(0,1)[^(90)-(180)\(45,95)B(0,1,0)]+(25)G
|
||
|
# tworzenie nowej galęzi wraz z liściem
|
||
|
|
||
|
F(x,w) < B(0,1,t) : x==2 -> #stochastic
|
||
|
p=3 B(0,1,t)
|
||
|
p=1 G
|
||
|
#stochastic end
|
||
|
# wybór liść lub zalązek
|
||
|
|
||
|
F(x,w) < G : x==3 -> [+(45)F(x,1)W(0,1)][/(137.5)+(25)F(x,1)^(90)-(90)\(5,45)B(0,1,0)]-(90)\(15,50)B(0,1,0)
|
||
|
# teorzenie gałęzi z kwatostanem z któego powstanie później owoc
|
||
|
|
||
|
W(x,w) : x>=1 -> Z(0.3,1,0)
|
||
|
# jeśli wielkość kwatu osiągnie odpowiedznią wielkość podmień go na rozwijający się owoc (czyli lato)
|
||
|
|
||
|
S(x,w,t) : t>=30 -> S(0.01,w,t)
|
||
|
# jeśli czas istnienia owocu przekroczy zadaną wartość to niech zniknie (zostanie zastąpiony przez mini model)
|
||
|
|
||
|
S(x,w,t) : x>=1 -> S(x,w,t+1)
|
||
|
# jeśli dojrzały owoc osiągnął zadaną wielkość to zacznij mu liczyć czas istnienia
|
||
|
|
||
|
Z(x,w,t) : x>=1 -> S(x,w,t)
|
||
|
# jeśli owoc osiągnął zadaną wielkość to niech zmieni kolor na dojrzały
|
||
|
|
||
|
F(x,w) > [F(x1,w1)]F(x2,w2) -> F(x,(w1^2+w2^2)^0.5)
|
||
|
# zwiększanie grubości gałęzi w przypadku wystąpienia rozgałęzienia
|
||
|
|
||
|
F(x,w) > F(x1,w1) -> F(x,w1)
|
||
|
|
||
|
W(x,w) : x<w -> W(x+0.05,w)
|
||
|
# rosniecie platkow, tak długo jak pierwszy parametr jest mniejszy od drugiego to rob przeskalowywanie od rozmiaru x do w z zadanym krokiem
|
||
|
|
||
|
Z(x,w,t) : x<w -> Z(x+0.025,w,t)
|
||
|
# rosniecie srodka, przeskalowywanie od rozmiaru x do w z zadanym krokiem
|
||
|
|
||
|
B(x,w,t) : x<w;t<150 -> B(x+0.1,w,t)
|
||
|
# rosniecie lisci, przeskalowywanie od rozmiaru x do w z zadanym krokiem
|
||
|
|
||
|
B(x,w,t) : t<150 -> B(x,w,t+1)
|
||
|
# zwiększzanie licznika czasu istnienia liścia
|
||
|
|
||
|
B(x,w,t) : t>=150 -> B(0.01,w,t)
|
||
|
# opadanie liści
|
||
|
|
||
|
\(x,w) : x<w -> \(x+1.0,w)
|
||
|
# otwieranie, rozkladanie od kata x stopni do w stopni z zadanym krokiem
|
||
|
|
||
|
#end rules
|