3. ワークスペースでのパッチの操作 < 4.1 アプリケーションを作る (1) > 4.2 アプリケーションを作る (2)
4.1 アプリケーションを作る (1)
パッチエディタの使い方、関数の基本を学習。
- 関数の例として、足し算をする関数をパッチに組み込んでみる。
ワークスペースに作ったパッチをダブルクリックしてパッチエディタを開く(第2章の内容)。
右クリックコンテキストメニューもしくはメニューバーからFunctions->Basic Tools->Arithmetic->OM+と選択すると、OM+関数が作成される。あるいは、ダブルクリックかCtrl + クリックで入力ボックスを出し「om+」と入力することでも作成できる。 - 基本的な操作を解説していく。
右下をドラッグすることでリサイズできる。キーボードのiキーを押すと標準の大きさに戻る。 - 各アイコン(以下ボックスと呼ぶ)の上辺の青丸がインプット、下辺の青丸がアウトプットを表していて、このOM+関数は2つの値を受け取って何らかの処理(ここでは2つの入力値の足し算)が行われて1つの値を返す関数だというのがわかる。(プログラミング界ではモノを0からカウントするので、一番左のインプットをInput[0]、次をInput[1]、最初のアウトプットをOutput[0]とここでは書くことにする。)
(モノによってはインプットの個数を増やせる。Shift+>かkキー押してみると増えるかも。) - インプットのそれぞれにマウスカーソルをかざすと、無入力の際に利用されるデフォルト値を見ることができる。このOM+は無入力ならば引数[0]は0、引数[1]は0が利用されるとわかる。
- この状態でOM+に処理させてアウトプットを出してみる。
やり方は、OM+関数ボックスを右クリックしてコンテキストメニューからEval Box、もしくはOM+関数ボックスを選択した状態でキーボードのvを押す、もしくはCtrlを押した状態でアウトプット青丸をクリックする(なかでもCtrl+クリックは重要)。この行為を、OM+を評価する(eValuate)という
Eval BoxおよびVキーによる方法では第0アウトプットの値が、Ctrl+クリックによる評価では選んだアウトプットの値が返される(OM+関数の場合アウトプットが1つだけなのでどっちでも同じ)。 - すると0+0が計算されてOM Listenerに「0」という値が返ってくる。(Tips:Ctrl + Shift + LでOM Listenerを最前面に持ってくることができる。)
- 今度はOM+に値を入力してみる。インプット青丸をShift押しながらクリックするとインプットに連結したテキストボックスが現れるので、例えば引数[0]に3、引数[1]に5を入力する。この状態で評価すると8が返ってくる。(インプット青丸ダブルクリックのデフォ値変更でも後の計算は同じようにできるがパッと見わかりづらい。「デフォ値から変えましたよ」というのが見てわかるようにしておくほうが無難。)
もちろん空いたところをダブルクリックして出る入力ボックスで3と5を別々に作ってOM+につなげても同じ結果になる。 - インプットの意味やどんな値を入れたらいいかは、Ctrlを押しながらインプット青丸にマウスカーソルをかざすとツールチップが出てくる。
OM+関数の場合、引数[0]・引数[1]ともnumberもしくはlistを入力できるとわかる。
numberは数値(2や-3のような整数integer、1.7のような小数float、1/3のような分数rational、#C(4 -3)のような複素数(4-3iを表している))。
listは値の集合(カッコで囲んで(2 -3 1.7)のように記述。6000はただの整数だが(6000)は要素が1つのリストである)。
従って下の図のような加算が可能。変数の型やなんやらについての詳細はまた別ページで。 - この関数をもっと詳しく知りたい場合は、OM+関数ボックスを右クリックしてShow Documentation、もしくはOM+関数ボックスを選択してdキーを押すと、ローカルにインストールされたドキュメンテーションがブラウザで開かれる。
- また、全ての関数に用意されているわけではないが、tキーでチュートリアルパッチを開くことができる。これはパッチなので値を自分でいじったり評価したりできる。
- Ctrl+CやCtrl+Vでコピペ、Deleteで削除できるのは通常のファイル等同様。
4.2 アプリケーションを作る (2) へ進む