// =========================================================================== // 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 createPolyCylinderValues(string $toolName) { string $name = "createPolyCylinder"; string $parent = (`toolPropertyWindow -q -location` + "|" + $name); setParent $parent; int $aDiv = `createPolyCylinderCtx -q -sa $toolName`; int $hDiv = `createPolyCylinderCtx -q -sh $toolName`; int $cDiv = `createPolyCylinderCtx -q -sc $toolName`; int $roundCap = `createPolyCylinderCtx -q -roundCap $toolName`; float $rad = `createPolyCylinderCtx -q -radius $toolName`; float $h = `createPolyCylinderCtx -q -height $toolName`; int $uvSetting = `createPolyCylinderCtx -q -createUVs $toolName`; int $createUV = 0; int $normalize = 0; int $preserveAR = 0; if ($uvSetting == 3){ $createUV = 1; $normalize = 1; $preserveAR = 1; } else if ($uvSetting == 2){ $createUV = 1; $normalize = 1; } else if ($uvSetting == 1){ $createUV = 1; } int $axis = `createPolyCylinderCtx -q -axis $toolName`; int $dragEdit = `createPolyCylinderCtx -q -doDragEdit $toolName`; int $dragEditCaps = `createPolyCylinderCtx -q -doSubdivisionsCapsEdit $toolName`; intSliderGrp -e -v $aDiv -cc ("createPolyCylinderCtx -e -sa #1 " + $toolName) createPolyCylinderAxisDivisionsSlider; intSliderGrp -e -v $hDiv -cc ("createPolyCylinderCtx -e -sh #1 " + $toolName) createPolyCylinderHeightDivisionsSlider; intSliderGrp -e -v $cDiv -cc ("createPolyCylinderCtx -e -sc #1 " + $toolName) createPolyCylinderCapDivisionsSlider; checkBoxGrp -e -v1 $roundCap -cc1 ( "createPolyCylinderCtx -e -roundCap #1 " + $toolName + ";" + "if(#1 && `createPolyCylinderCtx -query -subdivisionsCap " + $toolName + "` == 0)" + "{ createPolyCylinderCtx -edit -subdivisionsCap 1 " + $toolName + ";}") createPolyCylinderRoundCapCheckBox; floatSliderGrp -e -v $rad -cc ("createPolyCylinderCtx -e -radius #1 " + $toolName) createPolyCylinderRadiusSlider; floatSliderGrp -e -v $h -cc ("createPolyCylinderCtx -e -height #1 " + $toolName) createPolyCylinderHeightSlider; radioButtonGrp -e -sl ($axis + 1) -cc ("changeCylinderAxisSetting(\"" + $toolName+ "\")") createPolyCylinderAxisRadioButton; checkBoxGrp -e -v1 $createUV -cc1 ("changeCylinderUVSettings(\"" + $toolName+ "\")") createPolyCylinderCreateUVCheckBox; checkBoxGrp -e -v1 $normalize -cc1 ("changeCylinderUVSettings(\"" + $toolName+ "\")") createPolyCylinderNormalizeCheckBox; checkBoxGrp -e -v1 $preserveAR -cc1 ("changeCylinderUVSettings(\"" + $toolName+ "\")") createPolyCylinderPreserveAspectRatioCheckBox; checkBoxGrp -e -v1 $dragEdit -cc1 ("createPolyCylinderCtx -e -doDragEdit " + !$dragEdit + " " + $toolName) createPolyCylinderDragEditCheckBox; int $doDrag = `checkBoxGrp -q -v1 createPolyCylinderDragEditCheckBox`; if ($doDrag) checkBoxGrp -edit -enable true createPolyCylinderCapsDragEditCheckBox; else checkBoxGrp -edit -enable false createPolyCylinderCapsDragEditCheckBox; checkBoxGrp -e -v1 $dragEditCaps -cc1 ("createPolyCylinderCtx -e -doSubdivisionsCapsEdit " + !$dragEditCaps + " " + $toolName) createPolyCylinderCapsDragEditCheckBox; string $icon = "polyCylinder.png"; string $helpTag= "CreatePolyCylinderTool"; toolPropertySetCommon $toolName $icon $helpTag; toolPropertySelect $name; changeCylinderUVSettings($toolName); } global proc changeCylinderAxisSetting(string $toolName){ int $axisSetting = 0; if (`radioButtonGrp -exists createPolyCylinderAxisRadioButton`){ $axisSetting = (`radioButtonGrp -q -sl createPolyCylinderAxisRadioButton` - 1); } if ($axisSetting < 0){ $axisSetting = 0; } string $cmd = "createPolyCylinderCtx -e -axis " + $axisSetting + " " + $toolName; eval($cmd); } global proc changeCylinderUVSettings(string $toolName) { int $value = 0; int $createUVVal; int $normalizeVal; int $preserveARVal; if (`checkBoxGrp -exists createPolyCylinderCreateUVCheckBox`){ $createUVVal = `checkBoxGrp -q -v1 createPolyCylinderCreateUVCheckBox`; } if (`checkBoxGrp -exists createPolyCylinderNormalizeCheckBox`){ $normalizeVal = `checkBoxGrp -q -v1 createPolyCylinderNormalizeCheckBox`; } if (`checkBoxGrp -exists createPolyCylinderPreserveAspectRatioCheckBox`){ $preserveARVal = `checkBoxGrp -q -v1 createPolyCylinderPreserveAspectRatioCheckBox`; } if ($createUVVal){ checkBoxGrp -edit -enable true createPolyCylinderNormalizeCheckBox; if ($normalizeVal){ checkBoxGrp -edit -enable true createPolyCylinderPreserveAspectRatioCheckBox; }else { checkBoxGrp -edit -enable false createPolyCylinderPreserveAspectRatioCheckBox; } }else { checkBoxGrp -edit -enable false createPolyCylinderNormalizeCheckBox; checkBoxGrp -edit -enable false createPolyCylinderPreserveAspectRatioCheckBox; } if($createUVVal && $normalizeVal && $preserveARVal){ $value = 3; } else if ($createUVVal && $normalizeVal){ $value = 2; } else if ($createUVVal){ $value = 1; } string $cmd = ("createPolyCylinderCtx -edit -cuv " + $value + " " + $toolName); eval($cmd); }