土曜日, 4月 29, 2006

ドリトルでpsetメソッドを作ってみる

昨日までは、ドリトルでMIDIを楽しんでみたのだが、今日からはドリトルでコンピュータグラフィックに挑戦してみる。

ドリトルには秀逸なタートルグラフィックの機能があるのだが、この機能だけでコンピュータグラフィックをやろうとするとちょっと難しい。そこで、従来のプログラミング言語のグラフィック命令にあるような、任意の座標に点を打つpset命令に相当する描画メソッドを作ってみた。

ドリトルのラベルオブジェクトは、文字を表示するためのオブジェクトなのだが、任意の大きさの(1ドット単位)の表示領域を作成でき、なおかつ背景色を指定できるので、このラベルオブジェクトを使ってpsetメソッドを実現してみた。

使い方はこうだ。

描画! (x座標) (y座標) (表示色) (点の大きさ) pset

このpsetメソッドを使って、を描いてみる。ドリトルにもsincosなどの数学関数があるので、円を描画するのは簡単だ。

//psetメソッドで円を描く

描画:pset=[ |x y color size|
ラベル! 作る (size)(size) 大きさ (x)(y) 位置 (color) 色 書く
].

半径=100.
角度=0.
[角度<360]!の間[
 x=半径*cos(角度).
 y=半径*sin(角度).
 描画! (x)(y)(赤)(1) pset.
 角度=角度+1
]実行.

//--------- ここまで ----------



こんな感じでpsetメソッドが使えれば、ドリトルでコンピュータグラフィックを作るのも以外と簡単だ。