tree.L3A Test Bed | Generated by L3_IDE 3.033/English |
「2進木」のL3プログラムです。 成長させたい年数を「半角」で入れてください。(1≦s≦9)
canvas 0;Canvas 0,clear = [random(0.7,1),random(0.7,1),random(0.7,1)]
up -150,160;down;color (0,0,1)
print "【二進木】\n\n年数を「半角」で入れてください。(1≦s≦9)"
repeat 20
c=get_char(60) //年数の入力
Canvas 0,clear = [random(0.7,1),random(0.7,1),random(0.7,1)];up -120,150;down;color
(0,0,1)
p=2^(c-1);print "【二進木】 |c|年 枝は|p|本";up 0,-100,90;down
repeat d,1,c,1 //枝を年数の順番に増やすために入れた命令
tree(80,d) //d(年数)に数字を入れれば、ここからだけで動きます
function tree(a,i) //関数tree(a,i)を定義
if i>0
forward a; left 40 //角度は40度にしました。
tree((a/1.618),i-1) //再帰命令、成長度は黄金分割で!
right 80
tree((a/1.618),i-1) //再帰命令、成長度は黄金分割で!
left 40; backward a
return
しかし、これでは木らしくありません。幹と枝を分けて成長とともに太くし、さらに左右交互に枝が出るように変更してみました。