// =========================================================================== // 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: 14 January 1999 // // // Procedure Name: // attachCrvToolScript // // Input Arguments: // what is going to happen when this script is called // $setToTool = 0 ==> do the command // $setToTool = 1 ==> show option box // $setToTool = 2 ==> return the command // $setToTool = 3 ==> show tool option box // $setToTool = 4 ==> enter the tool // // Return Value: // None. // global proc attachCrvToolSetup( int $forceFactorySettings, string $goToTool ) { global int $gStartWithAutoComplete; if( $forceFactorySettings || !`optionVar -ex attachCurveEuc` ) { optionVar -iv attachCurveEuc 0; } if( $forceFactorySettings || !`optionVar -ex attachCurveLac` ) { optionVar -iv attachCurveLac $gStartWithAutoComplete; } if( "" != $goToTool ) { scriptCtx -e -euc `optionVar -q attachCurveEuc` $goToTool; scriptCtx -e -lac `optionVar -q attachCurveLac` $goToTool; } } global proc attachCurveValues ( string $toolName ) { performAttachCrv 3 $toolName; scriptCtxCommonValues( $toolName ); } global proc attachCurveProperties() { scriptCtxCommonProperties; } proc createAttachCrvContext( string $tool ) { if( ! `scriptCtx -exists $tool` ) { attachCrvToolSetup( 0, "" ); scriptCtx -i1 "attachCurves.png" -bcn "attachCurve" -title (uiRes("m_attachCrvToolScript.kAttachTool")) -totalSelectionSets 1 -expandSelectionList true -fcs ("attachCrvToolScript 0") -setNoSelectionPrompt (uiRes("m_attachCrvToolScript.kSelectTwoCurves")) -setSelectionPrompt (uiRes("m_attachCrvToolScript.kSelectSecondCurve")) -setDoneSelectionPrompt (uiRes("m_attachCrvToolScript.kCompleteAttach")) -setAutoToggleSelection true -showManipulators true -nurbsCurve true -curveParameterPoint true -curveOnSurface true -lastAutoComplete `optionVar -q attachCurveLac` -setSelectionCount 2 // If this was true, the tool would exit // once the attach has been completed -exitUponCompletion `optionVar -q attachCurveEuc` $tool; } } global proc string attachCrvToolScript( int $setToTool ) // // Description : // $setToTool = 0 ==> do the command // $setToTool = 1 ==> show option box // $setToTool = 2 ==> return the command // $setToTool = 3 ==> show tool/action option box // $setToTool = 4 ==> enter the tool/do the command { string $tool = ""; if( $setToTool > 2 ) { if( !`optionVar -q modelWithToolAttachCurve` ) { $setToTool = 4 - $setToTool; } else { $tool = "attachCrvContext"; createAttachCrvContext $tool; } } return scriptToolScript( "performAttachCrv", $setToTool, $tool ); }