関数にしてみたので取得後の使い道はいろいろ。
ダウンロードしたファイルをスクリプトフォルダにコピー後、
Mayaを起動すると使用できる。
「SelectInstance.mel」をダウンロード
//【シーン内インスタンスリストの取得】 global proc SelectInstance(string $ReturnList[]) { //変数の宣言 string $Trans[]; string $Shape[]; string $ListDAG[]; int $NoT; int $NUM; int $NoI = 0; //配列の初期化 clear $Trans; clear $Shape; //トランスノードリストの作成 $Trans =`ls -tr`; $NoT =`size $Trans`; //シェイプノードリストの作成 for ($i=0 ; $i<$NoT ; $i++) { select -r $Trans[$i]; clear $ListDAG; $ListDAG =`ls -sl -dag -s`; $Shape[$i]=$ListDAG[0]; } //インスタンスの選出 for ($i=0 ; $i<$NoT ; $i++) { $NUM = 0; for ($j=0 ; $j<$NoT ; $j++) { if ($Shape[$i] == $Shape[$j]) { $NUM++; } } if ($NUM>1) { $ReturnList[$NoI]=$Trans[$i]; $NoI++; } } } |
【使い方】
下のサンプルのように配列を引数として渡す事により、
その配列にインスタンスのリストが書き込まれる。
//インスタンスを選択する string $a[]; SelectInstance($a); select -r $a; |
0 件のコメント:
コメントを投稿