// =========================================================================== // 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. // =========================================================================== // // Procedure Name: // AEairFieldTemplate // // Description Name; // Creates the attribute editor controls for the airField Node // // Input Value: // nodeName // // Output Value: // None // // // Procedure Name: // AEairPresets // global proc AEairPresets (string $nodeName, int $whichPreset) { if ($whichPreset == 1) { setAttr ($nodeName+".inheritVelocity") 0.0; setAttr ($nodeName+".speed") 0.5; setAttr ($nodeName+".magnitude") 5.0; setAttr ($nodeName+".inheritRotation") true; setAttr ($nodeName+".componentOnly") false; setAttr ($nodeName+".enableSpread") false; setAttr ($nodeName+".maxDistance") 20.0; } else if ($whichPreset == 2) { setAttr ($nodeName+".inheritVelocity") 1.0; setAttr ($nodeName+".speed") 0.5; setAttr ($nodeName+".magnitude") 0.0; setAttr ($nodeName+".inheritRotation") false; setAttr ($nodeName+".componentOnly") true; setAttr ($nodeName+".enableSpread") false; setAttr ($nodeName+".maxDistance") 2.0; } else if ($whichPreset == 3) { setAttr ($nodeName+".inheritVelocity") 1.0; setAttr ($nodeName+".speed") 0.5; setAttr ($nodeName+".magnitude") 5.0; setAttr ($nodeName+".inheritRotation") true; setAttr ($nodeName+".componentOnly") false; setAttr ($nodeName+".enableSpread") true; setAttr ($nodeName+".spread") 0.5; setAttr ($nodeName+".maxDistance") 20.0; } } // // Procedure Name: // AEairPresetsNew // global proc AEairPresetsNew ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); setUITemplate -pst attributeEditorPresetsTemplate; rowLayout -nc 4; text -l ""; button -label (uiRes("m_AEairFieldTemplate.kWind")) -c ("AEairPresets " + $nodeName[0] + " 1") dynAirPreset1; button -label (uiRes("m_AEairFieldTemplate.kWake")) -c ("AEairPresets " + $nodeName[0] + " 2") dynAirPreset2; button -label (uiRes("m_AEairFieldTemplate.kFan")) -c ("AEairPresets " + $nodeName[0] + " 3") dynAirPreset3; setParent ..; setUITemplate -ppt; } // // Procedure Name: // AEairPresetsReplace // global proc AEairPresetsReplace ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); button -e -c ("AEairPresets " + $nodeName[0] + " 1") dynAirPreset1; button -e -c ("AEairPresets " + $nodeName[0] + " 2") dynAirPreset2; button -e -c ("AEairPresets " + $nodeName[0] + " 3") dynAirPreset3; } // // Procedure Name: // checkEnableSpread // global proc checkEnableSpread ( string $nodeName ) { string $nodeAttr = $nodeName + ".enableSpread"; int $value = `getAttr $nodeAttr`; if ( $value == 1 ) { editorTemplate -dimControl $nodeName "spread" false; } else { editorTemplate -dimControl $nodeName "spread" true; } } // // Procedure Name: // AEairFieldTemplate // global proc AEairFieldTemplate ( string $nodeName ) { editorTemplate -beginScrollLayout; AEtransformMain $nodeName; editorTemplate -beginLayout (uiRes("m_AEairFieldTemplate.kPredefinedSettings")) ; editorTemplate -callCustom "AEairPresetsNew" "AEairPresetsReplace" "speed"; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEairFieldTemplate.kAirFieldAttributes")) -collapse 0; // include/call base class/node attributes AEfieldCommon $nodeName; editorTemplate -addControl "direction"; editorTemplate -addControl "speed"; editorTemplate -addControl "inheritVelocity"; editorTemplate -beginNoOptimize; editorTemplate -addControl "inheritRotation"; editorTemplate -addControl "componentOnly"; editorTemplate -endNoOptimize; editorTemplate -endLayout; editorTemplate -beginLayout (uiRes("m_AEairFieldTemplate.kSpread")) ; editorTemplate -addControl "enableSpread" "checkEnableSpread"; editorTemplate -addControl "spread"; editorTemplate -endLayout; // include/call base class/node attributes AEfieldNoScroll $nodeName; editorTemplate -addExtraControls; editorTemplate -endScrollLayout; }