【Max 8】collの基本的な使い方

記事をシェアする:

概要

[coll]オブジェクトは複数の数値や文字などを格納でき、インデックス(数値)や文字によってデータを呼び出せるオブジェクトです。

例えば、音階を作るために1オクターブ内の音列情報を入れたり、パラメータのプリセットを保管するために使用します。

基本的な使い方

[coll]はアーギュメントに名前を設定します。ここでは「data1」「data2」としていますが、それぞれに異なるデータが格納されます。

データを消さないように

[coll]はデフォルトで、パッチの終了時にデータが消えるようになっています。データを残すにはインスペクタを開きcoll > Save Data With Patcher のチェックボックスをオンにしてください。

もしくは「embed 1」を送ります。「embed 0」は保存しない状態(ディフォルト)です。

例えばパッチ内で一時的に作られたデータや、演奏内容などを入れる場合は残す必要はありませんが、音階やパラメータなど固定されたデータを使用する場合などはセーブした方が良いです。

書き込む

[coll]にデータを格納するには「インデックス値 データ」の形でメッセージを送ります。リスト・メッセージの1番目の数字がインデックス値になります。データはリスト形式で続けて書きます。

文字を格納する場合、1単語はそのままで良いですが、スペースが入る場合はダブルクオーテーション(”)で囲みます。

データの確認

[coll data]に格納されたデータ

格納するデータのメッセージを送り、openメッセージを送ると、新しいウィンドウが開きdataに格納されたデータが確認できます。パッチをロックし[coll]オブジェクトをダブルクリックしても同様のウィンドウが開きます。

読み出す(インデックス番号)

1,2,3の順で数値を送った結果

整数値を送ることで、そのインデックスに該当するデータを出力します。

読み出す(特定のデータ)

「nth インデックス番号 何番目のデータ」の形式でメッセージを送ると、特定のデータを出力させることができます。2次元配列などを扱うことができます。

読み出す(全てのデータ)

「dump」メッセージを送ると格納している全てのデータを出力します。

削除する

「clear」メッセージを送ると、格納されたデータ全てが削除されます。

「remove インデックス番号」メッセージを送ると、該当するインデックス番号のデータが削除されます。

「delete インデックス番号」メッセージを送ると、該当するインデックス番号のデータが削除され、それ以降のインデックス番号が振り直されます。例えば1、2、3、4のインデックス番号とデータがあり「delete 2」を送った場合、2に合ったデータは削除され、3,4のインデックス番号が2,3に振り直されます。

データ編集

このようなデータがあったとします。

挿入

インデックス番号2に挿入

「insert インデックス番号 データ」で、そのインデックス番号に挿入し、後ろの番号は振り直されます。

データを追加

インデックス番号2のデータに追加

「merge インデックス番号 データ」で、そのインデックス番号のデータの最後に、データを追加します。

データを変更

インデックス番号1の2番目のデータを変更

「nsub インデックス番号 データ番号 データ」で指定したデータを変更します。

「sub インデックス番号 データ番号 データ」の場合上記と同じですが、変更したインデックスのデータを第1アウトから、インデックス番号を第2アウトから出力します。

記事をシェアする: