水曜日, 4月 12, 2006

ドリトルで十三弦を作ってみる

配列オブジェクトを取り出す場合は、取り出す配列の番号を指定する。この番号は数値で指定するわけだから、この番号を計算して決めることもできるのだ。今日は、配列の指定にこんな計算した番号を使う方法を試してみる。

まず最初に、お琴の「平調子」の音階の配列を作る。そしてこの配列から音を順番に取り出して見る。順番に取り出すわけだから、この順番の値(n)を計算で求めてみる。方法は「ドリトル」の繰り返し構文を使って、nの値を+1づつ増やしていくだけだ。
そして、一番上の13番目の音まできたら、今度は逆に-1を加えて順番を下げていくことにする。

この「13番目の音まできたら」という処理をするのが、条件判定の構文だ。書き方はこうだ。

「判定条件」!なら「条件が真の時の処理」実行。

今日はもう一つ。文字列の連結というのを使ってみる。文字列の連結の書き方はこうだ。

"文字列"+"文字列"+ ・・・・・

取り出した音に、"~"を連結して余韻の感じを出す。

こうして作ったメロディー(作品1)を、お琴の楽器オブジェクト(十三弦)を作って演奏させてみる。楽器(音色)の指定は、MIDIのプログラムチェンジ番号を使う。(kotoは108番なのだが、コンピュータ上は0から始まるので-1している)
http://www2u.biglobe.ne.jp/~rachi/midinst.htm

//--------- ここから ----------
平調子=配列!作る "ミ"入れる "↓ラ"入れる "↓シ"入れる "ド"入れる "ミ"入れる "ファ"入れる "ラ"入れる "シ"入れる" ↑ド"入れる "↑ミ"入れる "↑ファ"入れる "↑ラ"入れる "↑シ"入れる。

作品1=メロディ!作る。
n=1。m=1。「
作品1! ((平調子! (n) 見る)+("~")+("~"))追加。
n=(n+m)。「n>13」!なら「n=(13)。 m=(-1)。」実行。
」!26回 繰り返す。

十三弦=楽器! (108-1) 作る (作品1)設定 演奏。
//--------- ここまで ----------



そして実行!ボタンだ。

「ミ・ラ・シ・ド・・・・・」とお琴の音が出れば成功だ。