Assembly: DigitalRune.Mathematics (in DigitalRune.Mathematics.dll) Version: 220.127.116.11 (18.104.22.16886)
[SerializableAttribute] [TypeConverterAttribute(typeof(QuaternionDConverter))] [ObfuscationAttribute(Feature = "controlflow")] public struct QuaternionD : IEquatable< >
<SerializableAttribute> _ <TypeConverterAttribute(GetType(QuaternionDConverter))> _ <ObfuscationAttribute(Feature := "controlflow")> _ Public Structure QuaternionD _ Implements IEquatable(Of )
[SerializableAttribute] [TypeConverterAttribute(typeof(QuaternionDConverter))] [ObfuscationAttribute(Feature = L"controlflow")] public value class QuaternionD : IEquatable< >
A quaternion consists of a scalar component w and a vector component v = (x, y, z). Alternatively it can be represented as a complex number with three imaginary parts w + ix + jy + kz, or as a 4-dimensional vector (w, x, y, z)
Due to common notation, the quaternion components are stored in the order: (w, x, y, z).
A unit quaternion is a quaternion q where N(q) = 1. (See Norm.) A unit quaternion can be represented by
q = cosθ + usinθ,
where u as a 3D vector has a length of 1. By applying Euler's identity for complex numbers the quaternion can be written in exponential notation:
q = euθ = cosθ + usinθ
Several methods, such as Ln(QuaternionD), require that the quaternion is a unit quaternion.