前回からのつづき。
どうやらSmall Basicはタートルグラフィックが扱える模様。BASICというよりはLOGOですね。
やってみると本当にカーソルが亀。PC-8801版は△マークだったような。MSX-LOGOは亀だったかな…
ともかくレッツゴー
セッションではこんな例が出ていました。(うろおぼえ)
コード
Turtle.Speed = 10 Turtle.X = 20 Turtle.Y = 120 Turtle.Move(100) Turtle.Angle = 90 ' 画面右方向を向く Turtle.Move(100) Turtle.Angle = 180 ' 画面下方向を向く Turtle.Move(100) Turtle.Angle = -90 ' 画面左方向を向く Turtle.Move(100)
結果
でもロゴなら、以下のようなコードのほうがきっとおもしろい。
上記と等価なコード
For i=1 To 4
Turtle.Move(100)
Turtle.Turn(90) ' 90°右に曲がれ!
EndFor
これを応用すると、以下のようなコードが書ける。
コード
Turtle.Speed = 10 Turtle.X = 20 Turtle.Y = 80 For i=1 To 12 Turtle.Move(20) Turtle.Turn(60) ' 右へ60° Turtle.Move(20) Turtle.Turn(-30) ' 左へ30° EndFor
結果
あるいはこんなのとか。
コード
Turtle.Speed = 10 Turtle.X = 120 Turtle.Y = 220 For i=1 To 36 Turtle.move(200) ' 200進んで Turtle.Turn(190) ' 鋭角10°で折り返す EndFor
結果
こういう相対的な座標指定で簡単にグラフィックか描ける言語って少ないから、新鮮で楽しいですよね。
オールトの雲
[SBasic] MMLによるMUSIC # Small Basic その3
前回からのつづき。
Link | 2010年7月4日 01:05
[SBasic] Microsoft Small Basic その1 | オールトの雲
[...] その2 | オールトの雲 より[SBasic] MMLによるMUSIC # Small Basic その3 に [SBasic] タートルグラフィック # Small Basic その2 | オールトの雲 [...]
Link | 2012年10月22日 22:37