Share via


UnsafeNativeMethods.Quaternion.Multiply(Quaternion,Quaternion,Quaternion) Method (Microsoft.DirectX)

Multiplies two quaternions.

Note: For programming in Microsoft Visual Basic .NET or Microsoft JScript .NET, use the equivalent method in the Microsoft.DirectX structures.

Definition

Visual Basic Public Shared Function Multiply( _
    ByVal pOut As Quaternion, _
    ByVal pQuat1 As Quaternion, _
    ByVal pQuat2 As Quaternion _
) As Quaternion
C# public static Quaternion Multiply(
    Quaternion pOut,
    Quaternion pQuat1,
    Quaternion pQuat2
);
C++ public:
static Quaternion Multiply(
    Quaternion pOut,
    Quaternion pQuat1,
    Quaternion pQuat2
);
JScript public static function Multiply(
    pOut : Quaternion,
    pQuat1 : Quaternion,
    pQuat2 : Quaternion
) : Quaternion;

Parameters

pOut Microsoft.DirectX.Quaternion
A Quaternion structure that is the product of two quaternions.
pQuat1 Microsoft.DirectX.Quaternion
Source Quaternion structure.
pQuat2 Microsoft.DirectX.Quaternion
Source Quaternion structure.

Return Value

Microsoft.DirectX.Quaternion
A Quaternion structure that is the product of two quaternions.

Remarks

Transformations are concatenated in the same order for the Quaternion.Multiply and Matrix.Multiply methods. In the following C# code example, assuming that mX and mY represent the same rotations as qX and qY, both m and q represent the same rotations.

[C#]
m = Matrix.Multiply(mX, mY);

q = Quaternion.Multiply(qX, qY);

The multiplication of quaternions is not commutative; that is, the order in which they are multiplied is important.

The return value for this method is the same value returned in the pOut parameter. This allows you to use the Multiply method as a parameter for another method.

See Also