// =========================================================================== // 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. // =========================================================================== // // // Creation Date: April 12 1996 // // Description: // These procs helps to create the controls for Sketch, // wrinkle with CVs and wrinkle with EPs tools. // property sheet. See also wrinkleValues.mel for procs that set // the state of the property sheet. // // Input Arguments: // None. // // Return Value: // None. // global proc wrinkleWiresCreatedMsg() { int $wc=0; int $isUniform = `radioButtonGrp -q -sl wrinkleTypeRadio1`; if ( $isUniform==1 ) { $wc=`intSliderGrp -q -v wrcntSlider`; } else if ( $isUniform==2 ) { $wc =`intSliderGrp -q -v wrcntSlider`; int $bc= `intSliderGrp -q -v branchSlider`; int $bd= `intSliderGrp -q -v depthSlider`; int $res= `pow $bc $bd`; $wc*=$res; } string $msg = (uiRes("m_wrinkleProperties.kCurrentSettings")); string $str = `format -s $wc $msg`; text -e -label $str -enable 1 wrinkleMsg; } proc wrinkleSetCallbacks (string $parent) { // // Description: // Set the callbacks for all of the controls in the dialog. // Modifying the context will force wrinkleValues() to be called // to update the state of the property sheet. // // setParent $parent; radioButtonGrp -e -on1 "wrinkleContext -e -st lines `currentCtx`;intSliderGrp -e -enable 0 branchSlider;intSliderGrp -e -enable 0 depthSlider; wrinkleWiresCreatedMsg" -on2 "wrinkleContext -e -st radial `currentCtx`;intSliderGrp -e -enable 1 branchSlider;intSliderGrp -e -enable 1 depthSlider;wrinkleWiresCreatedMsg" -on3 "wrinkleContext -e -st custom `currentCtx`;intSliderGrp -e -enable 0 branchSlider;intSliderGrp -e -enable 0 depthSlider;" wrinkleTypeRadio1; intSliderGrp -e -cc "wrinkleContext -e -wc #1 `currentCtx`;wrinkleWiresCreatedMsg" wrcntSlider; floatSliderGrp -e -cc "wrinkleContext -e -th #1 `currentCtx`" thickSlider; floatSliderGrp -e -cc "wrinkleContext -e -rnd #1 `currentCtx`" randomSlider; floatSliderGrp -e -cc "wrinkleContext -e -wi #1 `currentCtx`" wrinkleSlider; intSliderGrp -e -cc "wrinkleContext -e -brc #1 `currentCtx`;wrinkleWiresCreatedMsg" branchSlider; intSliderGrp -e -cc "wrinkleContext -e -bd #1 `currentCtx`;wrinkleWiresCreatedMsg" depthSlider; } global proc wrinkleProperties ( ) { // // Description: // This procedure builds the property sheet and assigns callbacks to // its controls. The state of the controls are set in wrinkleValues(). // // setUITemplate -pushTemplate OptionsTemplate; string $parent = `toolPropertyWindow -q -location`; setParent $parent; columnLayout -adj true wrinkle; frameLayout -collapsable true -collapse false -label (uiRes("m_wrinkleProperties.kWrinkleSettings")) knotFrame; columnLayout styleLayout; $parent = `toolPropertyWindow -q -location`; radioButtonGrp -nrb 3 -label (uiRes("m_wrinkleProperties.kType")) -label1 (uiRes("m_wrinkleProperties.kTangential")) -label2 (uiRes("m_wrinkleProperties.kRadial")) -label3 (uiRes("m_wrinkleProperties.kCustom")) wrinkleTypeRadio1; intSliderGrp -field true -max 20 -label (uiRes("m_wrinkleProperties.kAmount")) wrcntSlider; floatSliderGrp -field true -max 2.0 -label (uiRes("m_wrinkleProperties.kThickness")) thickSlider; floatSliderGrp -field true -label (uiRes("m_wrinkleProperties.kRandomness")) randomSlider; floatSliderGrp -field true -label (uiRes("m_wrinkleProperties.kIntensity")) wrinkleSlider; intSliderGrp -field true -max 10 -label (uiRes("m_wrinkleProperties.kRadialBranchAmt")) branchSlider; intSliderGrp -field true -max 4 -label (uiRes("m_wrinkleProperties.kRadialBranchDepth")) depthSlider; separator -h 20 ; text wrinkleMsg; wrinkleSetCallbacks $parent; setParent ..; setParent ..; setParent ..; setUITemplate -popTemplate; }