Assembly: VRage.Math.dll

public struct QuaternionD

Defines a four-dimensional vector (x,y,z,w), which is used to efficiently rotate an object about the (x, y, z) vector by the angle theta, where w = cos(theta/2). Uses double precision floating point numbers for calculation and storage

Fields

Member Description
static Identity
W Specifies the rotation component of the quaternion.
X Specifies the x-value of the vector component of the quaternion.
Y Specifies the y-value of the vector component of the quaternion.
Z Specifies the z-value of the vector component of the quaternion.

Constructors

Member Description
QuaternionD(double, double, double, double)
QuaternionD(Vector3D, double)

Methods

Member Description
static Add(QuaternionD, QuaternionD) Adds two Quaternions.
static Add(ref QuaternionD, ref QuaternionD, out QuaternionD) Adds two Quaternions.
static Concatenate(QuaternionD, QuaternionD) Concatenates two Quaternions; the result represents the value1 rotation followed by the value2 rotation.
static Concatenate(ref QuaternionD, ref QuaternionD, out QuaternionD) Concatenates two Quaternions; the result represents the value1 rotation followed by the value2 rotation.
static Conjugate(QuaternionD) Returns the conjugate of a specified QuaternionD.
static Conjugate(ref QuaternionD, out QuaternionD) Returns the conjugate of a specified QuaternionD.
static CreateFromAxisAngle(Vector3D, double) Creates a QuaternionD from a vector and an angle to rotate about the vector.
static CreateFromAxisAngle(ref Vector3D, double, out QuaternionD) Creates a QuaternionD from a vector and an angle to rotate about the vector.
static CreateFromForwardUp(Vector3D, Vector3D) Works for normalized vectors only
static CreateFromRotationMatrix(MatrixD) Creates a QuaternionD from a rotation MatrixD.
static CreateFromRotationMatrix(ref MatrixD, out QuaternionD) Creates a QuaternionD from a rotation MatrixD.
static CreateFromTwoVectors(ref Vector3D, ref Vector3D, out QuaternionD)
static CreateFromTwoVectors(Vector3D, Vector3D)
static CreateFromYawPitchRoll(double, double, double) Creates a new QuaternionD from specified yaw, pitch, and roll angles.
static CreateFromYawPitchRoll(double, double, double, out QuaternionD) Creates a new QuaternionD from specified yaw, pitch, and roll angles.
static Divide(QuaternionD, QuaternionD) Divides a QuaternionD by another QuaternionD.
static Divide(ref QuaternionD, ref QuaternionD, out QuaternionD) Divides a QuaternionD by another QuaternionD.
static Dot(QuaternionD, QuaternionD) Calculates the dot product of two Quaternions.
static Dot(ref QuaternionD, ref QuaternionD, out double) Calculates the dot product of two Quaternions.
static FromVector4(Vector4D)
static Inverse(QuaternionD) Returns the inverse of a QuaternionD.
static Inverse(ref QuaternionD, out QuaternionD) Returns the inverse of a QuaternionD.
static IsZero(QuaternionD)
static IsZero(QuaternionD, double)
static Lerp(QuaternionD, QuaternionD, double) Linearly interpolates between two quaternions.
static Lerp(ref QuaternionD, ref QuaternionD, double, out QuaternionD) Linearly interpolates between two quaternions.
static Multiply(QuaternionD, QuaternionD) Multiplies two quaternions.
static Multiply(ref QuaternionD, ref QuaternionD, out QuaternionD) Multiplies two quaternions.
static Multiply(QuaternionD, double) Multiplies a quaternion by a scalar value.
static Multiply(ref QuaternionD, double, out QuaternionD) Multiplies a quaternion by a scalar value.
static Negate(QuaternionD) Flips the sign of each component of the quaternion.
static Negate(ref QuaternionD, out QuaternionD) Flips the sign of each component of the quaternion.
static Normalize(QuaternionD) Divides each component of the quaternion by the length of the quaternion.
static Normalize(ref QuaternionD, out QuaternionD) Divides each component of the quaternion by the length of the quaternion.
static Slerp(QuaternionD, QuaternionD, double) Interpolates between two quaternions, using spherical linear interpolation.
static Slerp(ref QuaternionD, ref QuaternionD, double, out QuaternionD) Interpolates between two quaternions, using spherical linear interpolation.
static Subtract(QuaternionD, QuaternionD) Subtracts a quaternion from another quaternion.
static Subtract(ref QuaternionD, ref QuaternionD, out QuaternionD) Subtracts a quaternion from another quaternion.
Conjugate() Transforms this QuaternionD into its conjugate.
Equals(QuaternionD) Determines whether the specified Object is equal to the QuaternionD.
Equals(object) Returns a value that indicates whether the current instance is equal to a specified object.
GetAxisAngle(out Vector3D, out double)
GetHashCode() Get the hash code of this object.
Length() Calculates the length of a QuaternionD.
LengthSquared() Calculates the length squared of a QuaternionD.
Normalize() Divides each component of the quaternion by the length of the quaternion.
ToString() Retireves a string representation of the current object.
ToVector4()