SIQuaternion.SetFromXYZAngleValues

Introduced

v3.5

Description

Sets the quaternion using X,Y,Z Euler angles (in radians).

C# Syntax

SIQuaternion.SetFromXYZAngleValues( Double in_dX, Double in_dY, Double in_dZ );

Scripting Syntax

SIQuaternion.SetFromXYZAngleValues( x, y, z );

Parameters

Parameter Type Description
x Double X Euler angle in radians
y Double Y Euler angle in radians
z Double Z Euler angle in radians

Examples

JScript Example

// Define 2 quaternion orientations using degrees radian
	var qA = XSIMath.CreateQuaternion();
	qA.SetFromXYZAngleValues( 
		XSIMath.DegreesToRadians(0),
		XSIMath.DegreesToRadians(0),
		XSIMath.DegreesToRadians(90) );
	var qB = XSIMath.CreateQuaternion();
	qB.SetFromXYZAngleValues( 
		XSIMath.DegreesToRadians(0),
		XSIMath.DegreesToRadians(0),
		XSIMath.DegreesToRadians(180) );
	// Do a sperical linear interpolation 50% between A & B 
	// and log results.
	var qC = XSIMath.CreateQuaternion();
	qC.Slerp( qA, qB, 0.5 );
	Application.LogMessage( "Q[" + 
		qC.w + "," +
		qC.x + ", V(" + 
		qC.y + "," + 
		qC.z + ")" + 
		"]" );	
	var aXYZ = new VBArray(qC.GetXYZAngleValues2()).toArray();
	Application.LogMessage( "R(" + 
		XSIMath.RadiansToDegrees(aXYZ[0]) + "," +
		XSIMath.RadiansToDegrees(aXYZ[1]) + "," + 
		XSIMath.RadiansToDegrees(aXYZ[2]) + ")" );

See Also

SIQuaternion.GetXYZAngleValues SIQuaternion.SetFromXYZAngleValues