GetXYZAngleValues2 (SIQuaternion)

Introduced

3.5

Description

Returns the X,Y,Z Euler angles (in radians) for this quaternion as an array.

C# Syntax

Object SIQuaternion.GetXYZAngleValues2();

Return Value

Array

Examples

JScript Example

   // CREATE OBJECTS A & B
   var A = ActiveSceneRoot.AddNull("A");
   var B = ActiveSceneRoot.AddNull("B");

   // GET GLOBAL TRANSFORM OF A & B
   var gksA = A.kinematics.global; 
   var gksB = B.kinematics.global; 

   var tgA = gksA.transform;
   var tgB = gksB.transform;

   // TRANSLATE & ROTATE A
   var vA = XSIMath.CreateVector3(2, 2, 0);
   tgA.SetTranslation( vA );
          
   var rA = XSIMath.CreateRotation();
   rA.SetFromXYZAnglesValues( 0, 0, XSIMath.DegreesToRadians( 45 ) ); 
   tgA.SetRotation( rA );
          
   gksA.transform = tgA;

   // GET LOCAL TRANSFORM OF B RELATIVE TO A
   var mA = XSIMath.CreateMatrix3();
   var mB = XSIMath.CreateMatrix3();

   tgA.GetRotationMatrix3(mA);
   tgB.GetRotationMatrix3(mB);

   mA.TransposeInPlace();
   mB.MulInPlace( mA );

   // GET ORIENTATION OF B RELATIVE TO A AS A QUATERNION
   var qB = XSIMath.CreateQuaternion();
   mB.GetQuaternion(qB);

   // log result
   var aXYZ = new VBArray(qB.GetXYZAngleValues2()).toArray();
   Application.LogMessage( "R(" + 
       XSIMath.RadiansToDegrees(aXYZ[0]) + "," +
       XSIMath.RadiansToDegrees(aXYZ[1]) + "," + 
       XSIMath.RadiansToDegrees(aXYZ[2]) + ")" );

See Also

SIQuaternion.GetXYZAngleValues

SIQuaternion.SetFromXYZAngleValues



Autodesk Softimage v7.5