// =========================================================================== // 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: 7 Oct 1998 // // Procedure Name: // rebuildCurveSetup // // Description: // Update the state of the option box UI to reflect the option values. // // Input Arguments: // parent - Top level parent layout of the option box UI. // Required so that UI object names can be // successfully resolved. // // forceFactorySettings - Whether the option values should be set to // default values. // // Return Value: // None. // global proc rebuildCurveSetup(string $parent, int $forceFactorySettings) { setParent $parent; // Query the optionVar's and set the values into the controls // int $rebuildType = `optionVar -query rebuildCurveType` + 1; int $numSpans = `optionVar -query rebuildCurveTypeUniformNumSpans`; int $degree = `optionVar -query rebuildCurveTypeUniformDegree`; int $keepRange = `optionVar -query rebuildCurveKeepRange`; int $endKnots = `optionVar -q rebuildCurveEndKnots`; int $keepControlPoints = `optionVar -query rebuildCurveKeepControlPoints`; int $keepEndPts = `optionVar -query rebuildCurveKeepEndPoints`; int $keepTan = `optionVar -query rebuildCurveKeepEndTangents`; int $keepNumSpans = `optionVar -query rebuildCurveKeepNumSpans`; int $useGlobalTol = `optionVar -query rebuildCurveUseGlobalTolerance`; radioButtonGrp -e -select (2 - $useGlobalTol) toleranceRadioButtonGrp; float $localTol = `optionVar -query rebuildCurveLocalTolerance`; int $keepOriginal = `optionVar -query rebuildCurveKeepOriginal`; // Set the controls // if( $rebuildType == 1 || $rebuildType == 2 || $rebuildType == 3 ) radioButtonGrp -edit -select $rebuildType rebuildTypeRadioGroup1; else if( $rebuildType == 4 || $rebuildType == 5 ) { int $temp = $rebuildType - 3; radioButtonGrp -edit -select $temp rebuildTypeRadioGroup2; } else { int $temp = $rebuildType - 5; if ($temp >= 3) { $temp--; // Beziers are type 8, but they're on radio button 2 } radioButtonGrp -e -select $temp rebuildTypeRadioGroup3; } intSliderGrp -edit -value $numSpans numSpansIntSliderGrp; switch($degree) { case 1: radioButtonGrp -e -select 1 rebuildCrvDegree123; break; case 2: radioButtonGrp -e -select 2 rebuildCrvDegree123; break; case 3: radioButtonGrp -e -select 3 rebuildCrvDegree123; break; case 5: radioButtonGrp -e -select 1 rebuildCrvDegree57; break; case 7: radioButtonGrp -e -select 2 rebuildCrvDegree57; break; default: radioButtonGrp -e -select 3 rebuildCrvDegree123; break; } radioButtonGrp -e -select ($endKnots+1) endKnotsRadioButtonGrp; radioButtonGrp -edit -select ($keepRange+1) keepRangeRadioButtonGrp; checkBoxGrp -edit -value1 $keepEndPts keepCheckBoxGrp; checkBoxGrp -edit -value2 $keepTan keepCheckBoxGrp; checkBoxGrp -edit -value3 $keepControlPoints keepCheckBoxGrp; checkBoxGrp -edit -value4 $keepNumSpans keepCheckBoxGrp; radioButtonGrp -edit -select $useGlobalTol toleranceRadioButtonGrp; floatSliderGrp -edit -value $localTol localTolFloatFieldGrp; if( `checkBoxGrp -q -exists keepOriginalCheckBox` ) { checkBoxGrp -edit -value1 $keepOriginal keepOriginalCheckBox; } rebuildCurveVisibility $parent -1 $rebuildType $keepControlPoints $keepNumSpans; }