// ks_groupsToDisplaylayer() // Creates display layers from selected groups. // Display layers are named after the groups and contain all children objects. // Install: // Put ks_groupsToDisplaylayers.mel in you script directory. // Start the GUI by typing "ks_groupsToDisplaylayers" in the script editor. //////////////////////////////////////////////////////////////////////////////////// global proc ks_groupsToDisplaylayers() { global int $gl_debug; if ($gl_debug) { print ("\n function: ks_groupsToDisplaylayers()"); } string $obj[] =`ls -l -sl`; int $size= `size($obj)`; waitCursor -state on; progressWindow -title "Update" -isInterruptable true; catch(`progressWindow -e -min 0 -max $size`); for ($k = 0; $k < size($obj); $k++) { if (`nodeType $obj[$k]`== "transform") { catch(`progressWindow -e -step 1`); // print ($obj[$k] +"\n"); string $bufferG[]; tokenize $obj[$k] "|" $bufferG; int $sizeP =`size($bufferG)`; string $objs[] =`select -hi $obj[$k]`; string $lName = `createDisplayLayer -empty -name ($bufferG[$sizeP-1]+"_#")`; setAttr ($lName + ".color") ($k%30+1); editDisplayLayerMembers -fullNames -noRecurse $lName `ls -selection`; } } select -d; progressWindow -endProgress; waitCursor -state off; }