2014年8月11日月曜日

ウエイト付け補助Tool (2)

ウエイト付けToolの続きです。

ひとまず、選択したポリゴンの頂点を取得してリスト化するところまでやってみました。


以下ソース

//---------------------------------------------------------

//選択ポリゴンノードの頂点座標のリストを取得する

//------------------------------------------------------------------------
//選択した頂点の座標を取得する
global proc vector [] getSelectedPosition()
{
//ソース元:http://www.not-enough.org/abe/manual/maya/mel-tips.html#getPosition

vector $POS_POSITION[];
float $val[];

string $sp[] = `ls -sl`;
string $pos[] = `filterExpand -sm 31 $sp`;
int $i = 0;
for($p in $pos)
{
$pv = `pointPosition $p`;
$val[0] = $pv[0];
$val[1] = $pv[1];
$val[2] = $pv[2];
$POS_POSITION[$i] = <<$val[0],$val[1],$val[2]>>;
//print $pv;
$i++;
}
return $POS_POSITION;
}
/*
ここまでのプロシージャは、以下サイト様よりソースをコピー、変数をいじらせていただきました。
http://www.not-enough.org/abe/manual/maya/mel-tips.html#getPosition
いつも(勝手ながら)勉強させていただいているサイト様です。
*/
//------------------------------------------------------------------------
//選択したポリゴンの頂点リストを取得し、選択する
//変数群の宣言
string $NODE_LIST[];
string $NODE_NAME ;
vector $TARGET_POS[];

//選択したオブジェクトのノード名を取得する
$NODE_LIST = `ls -sl`;
for ( $NODE_NAME in $NODE_LIST){
$NODE_NAME = ($NODE_NAME + ".vtx[*]");
select $NODE_NAME;

$TARGET_POS = `getSelectedPosition`;
print $TARGET_POS;
}

//おわり
select -cl;
//------------------------------------------------------------------------



0 件のコメント:

コメントを投稿