dist/axis3d.js
/**
 * Creates a matrix from a quaternion rotation.
 *
 * @param {mat4} out mat4 receiving operation result
 * @param {quat4} q Rotation quaternion
 * @returns {mat4} out
 */
Creates a matrix from a quaternion rotation.
@param {mat4} out mat4 receiving operation result
@param {quat4} q Rotation quaternion
@returns {mat4} out
Creates a matrix from a quaternion rotation . @param { mat4 } out mat4 receiving operation result @param { quat4 } q Rotation quaternion @returns { mat4 } out
function fromQuat(out, q) {
    var x = q[0],
        y = q[1],
        z = q[2],
        w = q[3],
        x2 = x + x,
        y2 = y + y,
        z2 = z + z,
        xx = x * x2,
        yx = y * x2,
        yy = y * y2,
        zx = z * x2,
        zy = z * y2,
        zz = z * z2,
        wx = w * x2,
        wy = w * y2,
        wz = w * z2;
    out[0] = 1 - yy - zz;
    out[1] = yx + wz;
    out[2] = zx - wy;
    out[3] = 0;
    out[4] = yx - wz;
    out[5] = 1 - xx - zz;
    out[6] = zy + wx;
    out[7] = 0;
    out[8] = zx + wy;
    out[9] = zy - wx;
    out[10] = 1 - xx - yy;
    out[11] = 0;
    out[12] = 0;
    out[13] = 0;
    out[14] = 0;
    out[15] = 1;
    return out;
}
function fromQuat ( out , q ) { var x = q [ 0 ] , y = q [ 1 ] , z = q [ 2 ] , w = q [ 3 ] , x2 = x + x , y2 = y + y , z2 = z + z , xx = x * x2 , yx = y * x2 , yy = y * y2 , zx = z * x2 , zy = z * y2 , zz = z * z2 , wx = w * x2 , wy = w * y2 , wz = w * z2 ; out [ 0 ] = 1 - yy - zz ; out [ 1 ] = yx + wz ; out [ 2 ] = zx - wy ; out [ 3 ] = 0 ; out [ 4 ] = yx - wz ; out [ 5 ] = 1 - xx - zz ; out [ 6 ] = zy + wx ; out [ 7 ] = 0 ; out [ 8 ] = zx + wy ; out [ 9 ] = zy - wx ; out [ 10 ] = 1 - xx - yy ; out [ 11 ] = 0 ; out [ 12 ] = 0 ; out [ 13 ] = 0 ; out [ 14 ] = 0 ; out [ 15 ] = 1 ; return out ; }
Creates a matrix from a quaternion rotation.
Creates a matrix from a quaternion rotation .