// =========================================================================== // Copyright 2018 Autodesk, Inc. All rights reserved. // // Use of this software is subject to the terms of the Autodesk license // agreement provided at the time of installation or download, or which // otherwise accompanies this software in either electronic or hard copy form. // =========================================================================== global proc AEpolyGearTemplate( string $nodeName ) { editorTemplate -beginScrollLayout; editorTemplate -beginLayout (getPluginResource("modelingToolkit", "kPolyGearHistory")) -collapse 0; editorTemplate -addControl "sides"; editorTemplate -addControl "radius"; // "AEpolyGearRadiusChange"; editorTemplate -addControl "internalRadius"; editorTemplate -addControl "height"; editorTemplate -addControl "heightDivisions"; editorTemplate -addControl "gearSpacing"; editorTemplate -addControl "gearOffset"; editorTemplate -addControl "gearTip"; editorTemplate -addControl "gearMiddle"; editorTemplate -addControl "twist"; editorTemplate -addControl "taper"; //editorTemplate -callCustom "AEpolyGearHoleRadius" "AEpolyGearHoleRadiusEdit" ""; editorTemplate -endLayout; AEdependNodeTemplate $nodeName; editorTemplate -addExtraControls; editorTemplate -endScrollLayout; } /* global proc AEpolyGearRadiusChange ( string $nodeName ) { if ( `objExists $nodeName` == 0 ) return; string $nodeAttr = $nodeName + ".radius"; float $radius = `getAttr $nodeAttr`; $nodeAttr = $nodeName + ".internalRadius"; float $value = `getAttr $nodeAttr`; if($value > $radius){ $value = $radius; } setAttr ($nodeName + ".internalRadius") $value; floatSliderGrp -e -fieldMinValue 0.0 -fieldMaxValue $radius AEpolyGearHoleRadiusFloatSliderGrp; updateAE $nodeName; } global proc AEpolyGearHoleRadius ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); string $nodeAttr = $nodeName[0] + ".radius"; float $radius = `getAttr $nodeAttr`; floatSliderGrp -label "Hole Radius" -field true -minValue 0.0 -maxValue $radius -fieldMinValue 0.0 -fieldMaxValue $radius AEpolyGearHoleRadiusFloatSliderGrp; connectControl AEpolyGearHoleRadiusFloatSliderGrp ($nodeName[0] + ".internalRadius"); setParent ..; separator -w 100 -h 5 -hr 1 -st "none"; } global proc AEpolyGearHoleRadiusEdit ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); string $nodeAttr = $nodeName[0] + ".radius"; float $radius = `getAttr $nodeAttr`; floatSliderGrp -e -minValue 0.0 -maxValue $radius -fieldMinValue 0.0 -fieldMaxValue $radius AEpolyGearHoleRadiusFloatSliderGrp; connectControl AEpolyGearHoleRadiusFloatSliderGrp ($nodeName[0] + ".internalRadius"); } */