3次元空間上に線を描写するミニ言語。
text.txt
にプログラムを書くことによって、3次元空間上に線が描写される。
現在位置が(r, θ, y)であるとすると、
walk a b c
という命令を与えると、現在位置から直線を引きつつ新しい位置(r + a, θ + b, y + c)に移動する。
同様に、
move a b c
は線を引かずに移動のみ行う
walk sw a b c
は、walkと同様の移動を行うが、線を引く/引かないを切り替えながら移動する。
繰り返し命令は以下のように記述
repeat { 移動命令もしくは繰り返し命令 } 繰り返し回数
例として以下のようなプログラムになる。
repeat {
walk sw 0.4 3.6 0
move 0.4 3.6 1.0
} 40
repeat {
walk sw 0.4 3.6 0
move 0.4 3.6 1.0
} 40
move 200 0 -300
repeat {
repeat {
walk -0.025 1 5.2
walk -0.025 1 -5.1
} 1800
repeat {
walk 0.025 1 5.2
walk 0.025 1 -5.1
} 1800
} 2
repeat {
move 10 36 0
repeat {
walk 0 12 0
walk 0 0 10
} 60
repeat {
walk 0 -12 0
walk 0 0 -10
} 60
move 0 0 5
} 10