Quaternion Structure
Quaternion is usually used to perform rotation in computer graphics.

Namespace: Aspose.ThreeD.Utilities
Assembly: Aspose.3D (in Aspose.3D.dll) Version: 20.3.0.0 (20.3)
Syntax
public struct Quaternion

The Quaternion type exposes the following members.

Constructors
  NameDescription
Public methodQuaternion
Initializes a new instance of the Quaternion class.
Properties
  NameDescription
Public propertyLength
Gets the length of the quaternion
Methods
  NameDescription
Public methodConcat
Concatenate two quatrenions
Public methodConjugate
Returns a conjugate quaternion of current quaternion
Public methodDot
Dots product
Public methodEquals
Check if two quaternions equals
(Overrides ValueTypeEquals(Object).)
Public methodEulerAngles
Converts quaternion to rotation represented by euler angles All components are in radian
Public methodStatic memberFromAngleAxis
Creates a quaternion around given axis and rotate in clockwise
Public methodStatic memberFromEulerAngle(Vector3)
Creates quaternion from given euler angle
Public methodStatic memberFromEulerAngle(Double, Double, Double)
Creates quaternion from given euler angle
Public methodStatic memberFromRotation
Creates a quaternion that rotate from original to destinal direction
Public methodGetHashCode
Gets the hash code of Quaternion
(Overrides ValueTypeGetHashCode.)
Public methodGetType (Inherited from Object.)
Public methodStatic memberInterpolate
Populates this quaternion with the interpolated value between the given quaternion arguments for a t between from and to.
Public methodInverse
Returns a inverse quaternion of current quaternion
Public methodNormalize
Normalize the quaternion
Public methodToAngleAxis
Decompose the quaternion to angle and axis
Public methodToMatrix
Convert the rotation presented by quaternion to transform matrix.
Public methodToString
Gets the representation of quaternion in string
(Overrides ValueTypeToString.)
Operators
  NameDescription
Public operatorStatic memberAddition
Operator overloading for +
Public operatorStatic memberDivision
Operator overloading for /
Public operatorStatic memberEquality
Equal operator for quaternion
Public operatorStatic memberInequality
Not-equal operator for quaternion
Public operatorStatic memberMultiply(Quaternion, Quaternion)
Operator overloading for *
Public operatorStatic memberMultiply(Quaternion, Vector3)
Operator overloading for *
Public operatorStatic memberMultiply(Quaternion, Vector4)
Operator overloading for *
Public operatorStatic memberMultiply(Quaternion, Double)
Operator overloading for *
Public operatorStatic memberMultiply(Vector3, Quaternion)
Operator overloading for *
Fields
  NameDescription
Public fieldStatic memberIdentity
The Identity quaternion.
Public fieldw
The w component.
Public fieldx
The x component.
Public fieldy
The y component.
Public fieldz
The z component.
See Also