スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
配列について
大好評の初心者用 Maya Mel 講座。

今回は配列についてご紹介します。
例えば複数のオブジェクトに対して同じような操作をしたい場合、
その名前を格納する為にその分の変数を用意していたら冗長になってしまいます。
しかしながら、同じ型の複数の変数を1つにまとめられるものがあるのです。
この変数の事を配列と呼びます。

しばしば配列の中身の各々の事を『要素』、それらに対応する番号を『インデックス』と呼びます。

0609.jpg

ではソースコードをご覧ください。

{
string $nameList[];
$nameList = {"flat","well","rich","sum"};
polyCube -name $nameList[2];
}

1行目の様にする事で配列として宣言します。
変数名の後にそのまま大括弧 [] をつけるだけですね。
空白などは要りません。宣言時に要素数を指定する必要もありません。

複数の要素を同時に代入をする時は2行目のように中括弧 { ~ } で囲み、
要素の間を『,(コンマ)』で区切ります。

配列の中身を取り出す時は3行目のように
大括弧の中に要素のインデックスをつけて指定します。
ここで注意しなければならないのが、このインデックスは0から始まるという事です。
よって、インデックスを2にしたので3番目の要素『rich』が取り出されるのです。

同じような書き方で以下の様に記述すれば特定の箇所に要素を代入する事ができます。

$nameList[4] = "you";

この場合、先ほどは4つだった要素数が5つになります。
このように逐次的にメモリの確保ができる事は
C言語などのプログラミング言語には無い Mel の便利な点の一つだと思います。

また、Mel には二次元配列や三次元配列といった概念はありません。
他の言語に精通している人はとっつき難いかも知れませんが、
matrix型やvector型の変数を使えば似たような事はできます。


さて、お分かり頂けたでしょうか?
Mel では配列を使わざるを得ない状況が沢山あります。
きちんと理解をしておいてくださいね。

次回は数の演算や文字列の連結などをご紹介しようと思います。

参考:
 Autodesk Maya オンラインヘルプ : 配列
 Autodesk Maya オンラインヘルプ : 配列のサイズを取得して変更する

演習:
 float 型配列変数を一つ宣言し、 その要素として3つの適当な数値を代入し、
 それらを width, height, depth フラグの引数として
 polyCube コマンド によってポリゴン Cube を生成してください。
コメント
管理者のみ閲覧可能にする
Profile
HN らい

都内某社テクニカルディレクター
都内某専門学校講師
都内某企業講師
元中国某社S3Dスーパーバイザー
Contact
(ENGLISH OK. 可以用中文。)
Categories
Archives
RSS Link
QR Code