global proc approxDs( ) { if ( (`window -exists approxDsname`) == true ) deleteUI approxDsname; string $window = `window -title "Fast Aproximation" -wh 400 100 approxDsname`; columnLayout -adjustableColumn true; text " 1. Select Geometry"; //rename geoemtry and feature displacement OFF textFieldGrp -label "Geometry_Name" namestrings; button -l "Rename Geometry" -c "renameGeoDisOff"; text " "; text " Create SubD and Displacement Aproximation and Set Attr"; button -l "Create" -c "makeSA"; text " "; text "2. Select the Displacement File"; floatFieldGrp -label "Alpha Depth Factor" numberStrings; button -l "Create Expression X 1 " -c "fileExpXone"; button -l "Create Expression X 2" -c "fileExpXtwo"; text " "; button -l "Pre Filter On Off" -c "filterOn"; text " "; button -label "Close" -command ("deleteUI -window " + $window); setParent..; showWindow approxDsname; } approxDs; global proc renameGeoDisOff( ) { string $select[] = `ls -sl`; string $names = ` textFieldGrp -q -text namestrings `; string $geoApprox = $names + "_Geometry"; rename $select[0] $geoApprox; setAttr ($geoApprox + ".featureDisplacement") 0; } global proc makeSA( ) { eval MentalRayApproxEditor; mentalrayApproxEditor; call_createAssignApproxNode subdivApprox; call_createAssignApproxNode displaceApprox; string $name = ` textFieldGrp -q -text namestrings `; string $renameApprox = "mentalraySubdivApprox_" + $name; rename mentalraySubdivApprox1 $renameApprox; // Attributes for the subD setAttr ($renameApprox +".approxMethod") 2; setAttr ($renameApprox +".minSubdivisions") 4; setAttr ($renameApprox +".maxSubdivisions") 7; setAttr ($renameApprox +".length") 0.01; setAttr ($renameApprox +".viewDependent") 0; // Attributes for the Displacement string $name = ` textFieldGrp -q -text namestrings `; string $renameDisplacement = "mentalrayDisplaceApprox_" + $name; rename mentalrayDisplaceApprox1 $renameDisplacement; setAttr ($renameDisplacement + ".approxMethod") 3; setAttr ($renameDisplacement + ".minSubdivisions") 3; setAttr ($renameDisplacement + ".maxSubdivisions") 5; setAttr ($renameDisplacement + ".length") 0.010; setAttr ($renameDisplacement + ".viewDependent") 0; } global proc fileExpXone ( ) { string $select[] = `ls -sl`; string $names = ` textFieldGrp -q -text namestrings `; float $number[] = ` floatFieldGrp -q -v numberStrings `; string $displname = $names + "_displacementFile"; rename $select[0] $displname; float $two = 2; setAttr ($displname + ".alphaGain") $number[0]; // set Attributes for the alphaoffset float $result = $number[0] /$two; setAttr ($displname + ".alphaOffset") $result; setAttr ($displname + ".preFilter") 1; } global proc fileExpXtwo( ) { string $select[] = `ls -sl`; string $names = ` textFieldGrp -q -text namestrings `; float $number[] = ` floatFieldGrp -q -v numberStrings `; string $displname = $names + "_displacementFile"; rename $select[0] $displname; float $two = 2; float $contin = $number[0] * $two; setAttr ($displname + ".alphaGain") $contin; // set Attributes for the alphaoffset float $result = $contin /$two; setAttr ($displname + ".alphaOffset") $result; setAttr ($displname + ".preFilter") 1; } // setAttr "file1.preFilter" 1; global proc filterOn ( ) { string $select[] = `ls -sl`; string $names = ` textFieldGrp -q -text namestrings `; string $displname = $names + "_displacementFile"; setAttr ($displname + ".preFilter") 1; } ;