目次
・
トップ
・
「MaxScriptヘルプ」の見かた
・
コメントの記述
・
デバッグ用に変数の値などを表示したい
■MaxScript 基本文法
|
変数 |
演算子 |
文字列 |
配列 |
ループ |
条件分岐・エラー回避処理 |
関数(Function) |
配列
ヘルプ
[HELP] MAXScript 言語リファレンス > コレクション > コレクションのタイプ > 配列の値
配列を定義
解説とメモ
基本的な書式
配列の宣言と値の代入を行う場合
[配列名] = #([値1],[値2],[値3]…)
配列の宣言のみの場合
[配列名] = #()
記述例
配列の宣言と値の代入を行う場合
my_array = #("a","b","c","d","e")
配列の宣言のみの場合
my_array = #()
値の参照
解説とメモ
配列のインデックスは1からスタートします。
※他のプログラム言語では、配列の先頭は1番目ではなく0番目とするものがあります。
記述例
my_array = #("a","b","c","d","e")
my_array[2]
"b"が表示されます。
配列内容をクリア
解説とメモ
配列を再定義すると内容がクリアされますが、他に方法があるか調査中です。
配列に値を追加
解説とメモ
配列の末尾に値を追加するには append を使います。
基本的な書式
append [変数名] [追加する値]
記述例
my_array = #("a","b","c","d","e")
append my_array "f"
配列から値を削除
解説とメモ
配列の特定の位置から値を削除するには deleteItem を使います。
基本的な書式
deleteItem [変数名] [何番目ものを消すか]
記述例
my_array = #("a","b","c","d","e")
deleteItem my_array 2
この例では、配列の2番目の値"b"が削除され、配列の内容は"a","c","d","e" になります。
配列から重複した値を削除
ヘルプ
[HELP] よくある質問と回答 > 実際の操作に関する質問 > MAXScript 値の操作 > 配列から、重複した配列を削除する方法はありますか。
配列の結合
解説とメモ
配列を結合するには join を使います。
記述例
my_array1 = #(1,2,3,4,5)
my_array2 = #(6,7,8,9,10)
join my_array1 my_array2
配列の特定の位置に値を挿入
解説とメモ
配列を結合するには insertItem を使います。
記述例
my_array = #(10,20,30,40,50)
insertItem 15 my_array 2
MaxScriptリスナー上で上記の例を実行すると、"OK"と表示されます。
配列内容を確認すると #(10, 15, 20, 30, 40, 50) となっていることが分かります。
配列内容のソート
解説とメモ
配列の内容を昇順にソートするには sort を使います。
記述例
my_array = #(5,2,3,1,4)
sort my_array
多元配列(2次元配列)
ヘルプ
[HELP] よくある質問と回答 > 実際の操作に関する質問 > MAXScript 値の操作 > 多次元配列を作成する方法はありますか。
Max Scriptのサンプル
objnanme = #(#())
append objname #()
append objname #()
append objname #()
objname[4][6] = 0
objaname =#(#($obj_1_1,$obj_1_2,$obj_1_3,$obj_1_4,$obj_1_5,$obj_1_6))
append objaname #($obj_2_1,$obj_2_2,$obj_2_3,$obj_2_4,$obj_2_5,$obj_2_6)
append objaname #($obj_3_1,$obj_3_2,$obj_3_3,$obj_3_4,$obj_3_5,$obj_3_6)
append objaname #($obj_4_1,$obj_4_2,$obj_4_3,$obj_4_4,$obj_4_5,$obj_4_6)
for counter1 = 1 to 4 do (
for counte2 = 1 to 6 do (
select objname[counter1][counter2]
)
)