2014年8月26日火曜日

EDGE COLOR EDITOR

会社でのキャラセットアップの仕事の折に、こんな感じのmelを作りました。
選択したオブジェクトに関して、エッジの表示色を変更するmelです。



セットアップなどのとき、コントローラーのCURVEにアトリビュートから色を付けたりしますが、いちいちタブを開けたりなんだり…と、数が多いと面倒っくっさい。。。

このToolを使えば、ワンポチで好きな色を設定できる、というものです。

使用方法:
①melを起動するとウインドウが開くので、スライダーかintFieldからColorIndexを入力。
②オブジェクトを選択して、ボタンを押します。

以下ソース

//------------------------
//SET_EDGE_COLOR
//------------------------
/*
作成日:14/08/26
更新日:--/--/--
解説:
このmelは、選択したオブジェクトのエッジカラーを編集するmelです。
ポリゴンオブジェクトや、CURVEの色を変えるのに便利です、
*/

proc SET_EDGE_COLOR_PROC(){
string $NODE_LIST[] = `ls -sl`;
string $NODE_NAME;
int $COLOR_INDEX = `intField -q -value COLOR_INT`;

for($NODE_NAME in $NODE_LIST){
setAttr ($NODE_NAME + ".overrideEnabled") 1 ;
setAttr ($NODE_NAME + ".overrideColor") $COLOR_INDEX; 
}
}

if(`window -q -exists SET_EDGE_COLOR`) deleteUI SET_EDGE_COLOR;
window -s 0  -t "SET_EDGE_COLOR" SET_EDGE_COLOR;
rowLayout -nc 3;
colorIndexSliderGrp -min 0 -max 32 -value 10 COLOR_INDEX;
intField -value 10 -cc SET_COLOR_INDEX COLOR_INT;
button -w 100 -h 30 -l "SET_COLOR";// -c SET_EDGE_COLOR(`colorIndexSliderGrp -q -value COLOR_INDEX`);
setParent..;
showWindow SET_EDGE_COLOR;
proc SET_EDGE_COLOR(int $COLOR_INDEX){
string $NODE_LIST[] = `ls -sl`;
string $NODE_NAME;

for($NODE_NAME in $NODE_LIST){
setAttr ($NODE_NAME + ".overrideEnabled") 1 ;
setAttr ($NODE_NAME + ".overrideColor") $COLOR_INDEX; 
}
}

proc SET_COLOR_INDEX(){
int $COLOR_INDEX = (`intField -q -value COLOR_INT` + 1);
colorIndexSliderGrp -e -value $COLOR_INDEX COLOR_INDEX;
}

proc SET_COLOR_INT(){
int $COLOR_INT = (`colorIndexSliderGrp -q -value COLOR_INDEX` - 1);
intField -e -value $COLOR_INT COLOR_INT;
}
if(`window -q -exists SET_EDGE_COLOR`) deleteUI SET_EDGE_COLOR;
window -s 0  -t "SET_EDGE_COLOR" SET_EDGE_COLOR;
formLayout;
columnLayout ;//-nc 3 -ct3 left left left;
colorIndexSliderGrp -min 1 -max 32 -value 14 -cc SET_COLOR_INT COLOR_INDEX;
intField -value 13 -cc SET_COLOR_INDEX COLOR_INT;
button -w 100 -h 30 -l "SET_COLOR" -c SET_EDGE_COLOR_PROC;
setParent..;
setParent..;

showWindow SET_EDGE_COLOR;


0 件のコメント:

コメントを投稿