Thứ Sáu, 11 tháng 11, 2016

/// Getting RotationValue
string $jointSS[]=`ls -sl`;
float $rX_value=`getAttr($jointSS[0]+".rotateX")`;
float $rY_value=`getAttr($jointSS[0]+".rotateY")`;
float $rZ_value=`getAttr($jointSS[0]+".rotateZ")`;
////
if($rX_value!=0){
 
     string $Xrange=`shadingNode -asUtility clamp -n "Xrange"`;
     connectAttr -f ($jointSS[0]+".rotateX") ($Xrange+".inputR");
     setAttr ($Xrange+".minR") ($rX_value -90);
     setAttr ($Xrange+".maxR")($rX_value +90);
// change Range of Value

     string $Xrange_change=`shadingNode -asUtility plusMinusAverage -n "Xrange_change"`;
     setAttr ($Xrange_change+".operation") 2;
    connectAttr -f ($Xrange+".outputR") ($Xrange_change+".input1D[0]");
    setAttr ($Xrange_change+".input1D[1]") $rX_value;
    //////
         string $Xrange_change2=`shadingNode -asUtility multiplyDivide -n "Xrange_change2"`;
         setAttr ($Xrange_change2+".operation") 2;
         connectAttr -f ($Xrange_change+".output1D") ($Xrange_change2+".input1X");
         setAttr ($Xrange_change2+".input2X") 90;
    /// limite of range to  negative 1 to positive 1
     string $Xrange_limited=`shadingNode -asUtility clamp -n "Xrange_limited"`;
     connectAttr -f ($Xrange_change2+".outputX") ($Xrange_limited+".inputR");
     setAttr ($Xrange_limited+".minR") -1;
     setAttr ($Xrange_limited+".maxR") 1;
     // change sign of Value
     string $Xrange_changeSign=`shadingNode -asUtility plusMinusAverage -n "Xrange_changeSign"`;
     setAttr ($Xrange_changeSign+".operation") 2;
    setAttr ($Xrange_changeSign+".input1D[0]") 0;
    connectAttr -f ($Xrange_limited+".outputR") ($Xrange_changeSign+".input1D[1]");
    /// choose positive value
      string $ConditionGreaterZero=`shadingNode -asUtility condition -n "ConditionGreaterZero"`;
    setAttr ($ConditionGreaterZero+".operation") 2;
    connectAttr -f ($Xrange_limited+".outputR") ($ConditionGreaterZero+".firstTerm");
    connectAttr -f ($Xrange_limited+".outputR") ($ConditionGreaterZero+".colorIfTrueR");
    connectAttr -f ($Xrange_changeSign+".output1D") ($ConditionGreaterZero+".colorIfFalseR");


}