測定情報の値を変数として格納します。変数は、メモリ上の特定の場所を参照するために便宜的に使用する名前です。データはメモリ内のこの場所に格納されます。
変数には 4 つの主な特徴、名前、型、値、範囲があります。名前、型、範囲は作成時に定義します。変数の名前と型を定義することを、変数の宣言と呼びます。MEL では、変数名の先頭に必ず「$」記号を付け、後続文字が変数名であることをスクリプト言語に示します。
変数の範囲は、その変数にどこからアクセスできるかを定義します。たとえば変数をコードのブロック内で宣言すると、そのブロック以外からはアクセスできません。
名前とタイプは作成後に変更できません。変数の値は変更できますが、値は前に定義した型であることが必要です。
float $diameter_barrel;
このコマンドは、データ型が float の変数を、diameter_barrel という名前で宣言しています。浮動小数点数は、小数点を含む数値です。
$diameter_barrel = 4.2;
樽の直径は 4.2 単位です。シーンのこの値が変数に代入されます。変数に値を代入するには、代入演算子(=)を使用します。
また、MEL は他の大多数のプログラム言語で共通な、その他のデータ型もサポートしています。
string $testString = "this is a test";
print $testString;
this is a test
文字列データ型は複数の文字を格納する場合に使用します。print コマンドはスクリプト エディタに変数の値を出力します。
int $testInt = 5;
print ($testInt/2);
2
int データ型は整数値を格納する場合に使用します。整数(integer)は正の整数と負の整数を含みます。プログラムでは、整数を別の整数で割ると結果は整数になるため、この場合は出力値は 2.5 にはなりません(2.5 は整数ではありません)。
print コマンドの引数はカッコで囲みます。print コマンドの引数は 1 つだけです。カッコは Maya にコマンドを実行する前にカッコの内容を評価するよう伝えるために使用します。カッコはネストすることも可能で、数式と同じ法則でステートメントの評価順を決めます。
次の手順では、樽を均等間隔に並べて樽の列を作成します。樽をちょうど接するように並べて、リジッド ボディ シミュレーションの間に交差することがないようにします。
次のセクションでは、保存しておいた直径の値をコマンドの Z 値の引数として使用し、複製した樽を move コマンドで配置します。