## 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