// Copyright (C) 1997-2006 Autodesk, Inc., and/or its licensors.
// All rights reserved.
//
// The coded instructions, statements, computer programs, and/or related
// material (collectively the "Data") in these files contain unpublished
// information proprietary to Autodesk, Inc. ("Autodesk") and/or its licensors,
// which is protected by U.S. and Canadian federal copyright law and by
// international treaties.
//
// The Data is provided for use exclusively by You. You have the right to use,
// modify, and incorporate this Data into other products for purposes authorized 
// by the Autodesk software license agreement, without fee.
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. AUTODESK
// DOES NOT MAKE AND HEREBY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTIES
// INCLUDING, BUT NOT LIMITED TO, THE WARRANTIES OF NON-INFRINGEMENT,
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, OR ARISING FROM A COURSE 
// OF DEALING, USAGE, OR TRADE PRACTICE. IN NO EVENT WILL AUTODESK AND/OR ITS
// LICENSORS BE LIABLE FOR ANY LOST REVENUES, DATA, OR PROFITS, OR SPECIAL,
// DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES, EVEN IF AUTODESK AND/OR ITS
// LICENSORS HAS BEEN ADVISED OF THE POSSIBILITY OR PROBABILITY OF SUCH DAMAGES.

//
//  Alias Script File
//  MODIFY THIS AT YOUR OWN RISK
//
//  Creation Date:  13 Sep 2000
//
//  Procedure Name:
//      nurbsRatioConvert
//
//  Description:
//		A tool used for converting from a ratio to a value (and vice versa) in NURB creation
//		(e.g. given a radius and a ratio of height-to-radius, this can calculate the height itself)
//
//		If the "Create Nurbs" dialogs are changed so that they take ratios as inputs
//		for "Height" and "Length" etc., then this procedure can be changed to just return $ratioArg
//		and all the appropriate optionVars will be set.
//
//  Input Arguments:
//		$isCalcRatio indicates whether to return the product of the two arguments (false)
//		or to return the ratio between them (true)
//
//		$baseValue is the value that the ratio depends on (e.g. radius)
//
//  Return Value:
//      If $isCalcRatio is true, then the ratio of $ratioArg to $baseValue is returned.
//	Otherwise it returns the product of $baseValue and $ratioArg
//
global proc float nurbsRatioConvert (float $baseValue, float $ratioArg, int $isCalcRatio) {

	if ($isCalcRatio == false) {
		return($baseValue * $ratioArg);
	} else if ($baseValue != 0) {
		return($ratioArg / $baseValue);
	}
	return(0);
}