new Quaternion
A set of 4-dimensional coordinates used to represent rotation in 3-dimensional space.
Parameters:
| Name | Type | Argument | Default | Description | 
|---|---|---|---|---|
| x | Number | <optional> | 0.0 | The X component. | 
| y | Number | <optional> | 0.0 | The Y component. | 
| z | Number | <optional> | 0.0 | The Z component. | 
| w | Number | <optional> | 0.0 | The W component. | 
See:
Source:
Members
- 
    w :Number
- 
    
    The W component.- Default Value:
- 0.0
 
 
- 
    x :Number
- 
    
    The X component.- Default Value:
- 0.0
 
 
- 
    y :Number
- 
    
    The Y component.- Default Value:
- 0.0
 
 
- 
    z :Number
- 
    
    The Z component.- Default Value:
- 0.0
 
 
- 
    <static> IDENTITY
- 
    
    An immutable Quaternion instance initialized to (0.0, 0.0, 0.0, 1.0).
- 
    <static> packedInterpolationLength :Number
- 
    
    The number of elements used to store the object into an array in its interpolatable form.
- 
    <static> packedLength :Number
- 
    
    The number of elements used to pack the object into an array.
- 
    <static> ZERO
- 
    
    An immutable Quaternion instance initialized to (0.0, 0.0, 0.0, 0.0).
Methods
- 
    clone
- 
    
    
    Duplicates this Quaternion instance. Parameters:Name Type Argument Description resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    equals
- 
    
    
    Compares this and the provided quaternion componentwise and returns trueif they are equal,falseotherwise.Parameters:Name Type Argument Description rightQuaternion <optional> 
 The right hand side quaternion. Returns:Booleantrueif left and right are equal,falseotherwise.
- 
    equalsEpsilon
- 
    
    
    Compares this and the provided quaternion componentwise and returns trueif they are within the provided epsilon,falseotherwise.Parameters:Name Type Argument Description rightQuaternion <optional> 
 The right hand side quaternion. epsilonNumber The epsilon to use for equality testing. Returns:Booleantrueif left and right are within the provided epsilon,falseotherwise.
- 
    toString
- 
    
    
    Returns a string representing this quaternion in the format (x, y, z, w). Returns:String A string representing this Quaternion.
- 
    <static> add
- 
    
    
    Computes the componentwise sum of two quaternions. Parameters:Name Type Argument Description leftQuaternion The first quaternion. rightQuaternion The second quaternion. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> clone
- 
    
    
    Duplicates a Quaternion instance. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to duplicate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided. (Returns undefined if quaternion is undefined)
- 
    <static> conjugate
- 
    
    
    Computes the conjugate of the provided quaternion. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to conjugate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> convertPackedArrayForInterpolation
- 
    
    
    Converts a packed array into a form suitable for interpolation. Parameters:Name Type Argument Default Description packedArrayArray The packed array. startingIndexNumber <optional> 
 0 The index of the first element to be converted. lastIndexNumber <optional> 
 packedArray.length The index of the last element to be converted. resultArray <optional> 
 The object into which to store the result. 
- 
    <static> divideByScalar
- 
    
    
    Divides the provided quaternion componentwise by the provided scalar. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to be divided. scalarNumber The scalar to divide by. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> dot
- 
    
    
    Computes the dot (scalar) product of two quaternions. Parameters:Name Type Description leftQuaternion The first quaternion. rightQuaternion The second quaternion. Returns:Number The dot product.
- 
    <static> equals
- 
    
    
    Compares the provided quaternions componentwise and returns trueif they are equal,falseotherwise.Parameters:Name Type Argument Description leftQuaternion <optional> 
 The first quaternion. rightQuaternion <optional> 
 The second quaternion. Returns:Booleantrueif left and right are equal,falseotherwise.
- 
    <static> equalsEpsilon
- 
    
    
    Compares the provided quaternions componentwise and returns trueif they are within the provided epsilon,falseotherwise.Parameters:Name Type Argument Description leftQuaternion <optional> 
 The first quaternion. rightQuaternion <optional> 
 The second quaternion. epsilonNumber The epsilon to use for equality testing. Returns:Booleantrueif left and right are within the provided epsilon,falseotherwise.
- 
    <static> exp
- 
    
    
    The exponential quaternion function. Parameters:Name Type Argument Description cartesianCartesian3 The cartesian. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new instance if one was not provided.
- 
    <static> fastSlerp
- 
    
    
    Computes the spherical linear interpolation or extrapolation at t using the provided quaternions. This implementation is faster than Quaternion#slerp, but is only accurate up to 10-6. Parameters:Name Type Argument Description startQuaternion The value corresponding to t at 0.0. endQuaternion The value corresponding to t at 1.0. tNumber The point along t at which to interpolate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.- Quaternion#slerp
 See:
- 
    <static> fastSquad
- 
    
    
    Computes the spherical quadrangle interpolation between quaternions. An implementation that is faster than Quaternion#squad, but less accurate. Parameters:Name Type Argument Description q0Quaternion The first quaternion. q1Quaternion The second quaternion. s0Quaternion The first inner quadrangle. s1Quaternion The second inner quadrangle. tNumber The time in [0,1] used to interpolate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new instance if none was provided.- Quaternion#squad
 See:
- 
    <static> fromAxisAngle
- 
    
    
    Computes a quaternion representing a rotation around an axis. Parameters:Name Type Argument Description axisCartesian3 The axis of rotation. angleNumber The angle in radians to rotate around the axis. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> fromRotationMatrix
- 
    
    
    Computes a Quaternion from the provided Matrix3 instance. Parameters:Name Type Argument Description matrixMatrix3 The rotation matrix. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> getAngle
- 
    
    
    Computes the angle of rotation of the provided quaternion. Parameters:Name Type Description quaternionQuaternion The quaternion to use. Returns:Number The angle of rotation.
- 
    <static> getAxis
- 
    
    
    Computes the axis of rotation of the provided quaternion. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to use. resultCartesian3 <optional> 
 The object onto which to store the result. Returns:Cartesian3 The modified result parameter or a new Cartesian3 instance if one was not provided.
- 
    <static> innerQuadrangle
- 
    
    
    Computes an inner quadrangle point. This will compute quaternions that ensure a squad curve is C1. Parameters:Name Type Argument Description q0Quaternion The first quaternion. q1Quaternion The second quaternion. q2Quaternion The third quaternion. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new instance if none was provided.- Quaternion#squad
 See:
- 
    <static> inverse
- 
    
    
    Computes the inverse of the provided quaternion. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to normalize. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> lerp
- 
    
    
    Computes the linear interpolation or extrapolation at t using the provided quaternions. Parameters:Name Type Argument Description startQuaternion The value corresponding to t at 0.0. endQuaternion The value corresponding to t at 1.0. tNumber The point along t at which to interpolate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> log
- 
    
    
    The logarithmic quaternion function. Parameters:Name Type Argument Description quaternionQuaternion The unit quaternion. resultCartesian3 <optional> 
 The object onto which to store the result. Returns:Cartesian3 The modified result parameter or a new instance if one was not provided.
- 
    <static> magnitude
- 
    
    
    Computes magnitude for the provided quaternion. Parameters:Name Type Description quaternionQuaternion The quaternion to conjugate. Returns:Number The magnitude.
- 
    <static> magnitudeSquared
- 
    
    
    Computes magnitude squared for the provided quaternion. Parameters:Name Type Description quaternionQuaternion The quaternion to conjugate. Returns:Number The magnitude squared.
- 
    <static> multiply
- 
    
    
    Computes the product of two quaternions. Parameters:Name Type Argument Description leftQuaternion The first quaternion. rightQuaternion The second quaternion. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> multiplyByScalar
- 
    
    
    Multiplies the provided quaternion componentwise by the provided scalar. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to be scaled. scalarNumber The scalar to multiply with. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> negate
- 
    
    
    Negates the provided quaternion. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to be negated. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> normalize
- 
    
    
    Computes the normalized form of the provided quaternion. Parameters:Name Type Argument Description quaternionQuaternion The quaternion to normalize. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> pack
- 
    
    
    Stores the provided instance into the provided array. Parameters:Name Type Argument Default Description valueQuaternion The value to pack. arrayArray The array to pack into. startingIndexNumber <optional> 
 0 The index into the array at which to start packing the elements. 
- 
    <static> slerp
- 
    
    
    Computes the spherical linear interpolation or extrapolation at t using the provided quaternions. Parameters:Name Type Argument Description startQuaternion The value corresponding to t at 0.0. endQuaternion The value corresponding to t at 1.0. tNumber The point along t at which to interpolate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.- Quaternion#fastSlerp
 See:
- 
    <static> squad
- 
    
    
    Computes the spherical quadrangle interpolation between quaternions. Parameters:Name Type Argument Description q0Quaternion The first quaternion. q1Quaternion The second quaternion. s0Quaternion The first inner quadrangle. s1Quaternion The second inner quadrangle. tNumber The time in [0,1] used to interpolate. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new instance if none was provided.Example// 1. compute the squad interpolation between two quaternions on a curve var s0 = Cesium.Quaternion.innerQuadrangle(quaternions[i - 1], quaternions[i], quaternions[i + 1]); var s1 = Cesium.Quaternion.innerQuadrangle(quaternions[i], quaternions[i + 1], quaternions[i + 2]); var q = Cesium.Quaternion.squad(quaternions[i], quaternions[i + 1], s0, s1, t); // 2. compute the squad interpolation as above but where the first quaternion is a end point. var s1 = Cesium.Quaternion.innerQuadrangle(quaternions[0], quaternions[1], quaternions[2]); var q = Cesium.Quaternion.squad(quaternions[0], quaternions[1], quaternions[0], s1, t); - Quaternion#innerQuadrangle
 See:
- 
    <static> subtract
- 
    
    
    Computes the componentwise difference of two quaternions. Parameters:Name Type Argument Description leftQuaternion The first quaternion. rightQuaternion The second quaternion. resultQuaternion <optional> 
 The object onto which to store the result. Returns:Quaternion The modified result parameter or a new Quaternion instance if one was not provided.
- 
    <static> unpack
- 
    
    
    Retrieves an instance from a packed array. Parameters:Name Type Argument Default Description arrayArray The packed array. startingIndexNumber <optional> 
 0 The starting index of the element to be unpacked. resultQuaternion <optional> 
 The object into which to store the result. 
- 
    <static> unpackInterpolationResult
- 
    
    
    Retrieves an instance from a packed array converted with convertPackedArrayForInterpolation. Parameters:Name Type Argument Default Description arrayArray The original packed array. sourceArrayArray The converted array. startingIndexNumber <optional> 
 0 The startingIndex used to convert the array. lastIndexNumber <optional> 
 packedArray.length The lastIndex used to convert the array. resultQuaternion <optional> 
 The object into which to store the result. 
