Package org.lwjgl.util.vector

Examples of org.lwjgl.util.vector.Quaternion


    @Override
    public Quaternion getOrientationQuaternion()
    {
        // Needs x, y, z, w
        Quaternion orientation   = new Quaternion(cont1OrientationQuat_xyzw[0],
                cont1OrientationQuat_xyzw[1], cont1OrientationQuat_xyzw[2], cont1OrientationQuat_xyzw[3]);

        // Apply yaw offset
        Quaternion yaw           = new Quaternion();
        Vector4f vecAxisYawAngle = new Vector4f(0f, 1f, 0f, -yawOffset * PIOVER180);
        yaw.setFromAxisAngle(vecAxisYawAngle);
        Quaternion.mul(yaw, orientation, orientation);
        return orientation;
    }
View Full Code Here


    @Override
    public Quaternion getOrientationQuaternion() {
        float[] quaternion_xyzw = _getOrientationQuaternion();

        // Needs x, y, z, w
        return new Quaternion(quaternion_xyzw[0], quaternion_xyzw[1], quaternion_xyzw[2], quaternion_xyzw[3]);
    }
View Full Code Here

                headYaw    = rawYawPitchRoll[0];
                headPitch  = rawYawPitchRoll[1];
                headRoll   = rawYawPitchRoll[2];

                // Apply pitch offset
                Quaternion pitchCorrection = new Quaternion();
                Vector4f vecAxisPitchAngle = new Vector4f(1f, 0f, 0f, -lookPitchOffset * PIOVER180);
                pitchCorrection.setFromAxisAngle(vecAxisPitchAngle);
                Quaternion.mul(pitchCorrection, orientation, orientation);

                // Apply yaw offset
                Quaternion yawCorrection   = new Quaternion();
                Vector4f vecAxisYawAngle   = new Vector4f(0f, 1f, 0f, (-lookYawOffset * PIOVER180));
                yawCorrection.setFromAxisAngle(vecAxisYawAngle);
                Quaternion.mul(yawCorrection, orientation, orientation);

                // Get camera orientation:
                // Matrix
                cameraMatrix4f = QuaternionHelper.quatToMatrix4fFloatBuf(orientation);
View Full Code Here

        System.out.println(String.format("%s: Yaw: %.2f, Pitch: %.2f, Roll: %.2f", new Object[] {name, Float.valueOf(-angles[0]), Float.valueOf(-angles[1]), Float.valueOf(-angles[2])}));
    }

    public static Quaternion clone(Quaternion q1)
    {
        return new Quaternion(q1.x, q1.y, q1.z, q1.w);
    }
View Full Code Here

        return new Quaternion(q1.x, q1.y, q1.z, q1.w);
    }

    public static Quaternion pow(Quaternion q1, float power)
    {
        Quaternion input = QuaternionHelper.clone(q1);
        float inputMagnitude = QuaternionHelper.magnitude(input);
        Vec3 nHat = Vec3.fakePool.getVecFromPool(input.x, input.y, input.z).normalize();
        Quaternion vectorBit = QuaternionHelper.exp(QuaternionHelper.scalarMultiply(new Quaternion((float)nHat.xCoord, (float)nHat.yCoord, (float)nHat.zCoord, 0), (float)(power * Math.acos(input.w / inputMagnitude))));
        return QuaternionHelper.scalarMultiply(vectorBit, (float)Math.pow(inputMagnitude, power));
    }
View Full Code Here

        return QuaternionHelper.scalarMultiply(vectorBit, (float)Math.pow(inputMagnitude, power));
    }

    public static Quaternion mul(Quaternion left, Quaternion right)
    {
        Quaternion result = IDENTITY_QUATERNION;
        Quaternion.mul(left, right, result);
        return result;
    }
View Full Code Here

        Vec3 outputV = Vec3.fakePool.getVecFromPool(0, 0, 0);
        outputV.xCoord = Math.exp(inputA) * (inputV.normalize().xCoord * (float)Math.sin(inputV.lengthVector()));
        outputV.yCoord = Math.exp(inputA) * (inputV.normalize().yCoord * (float)Math.sin(inputV.lengthVector()));
        outputV.zCoord = Math.exp(inputA) * (inputV.normalize().zCoord * (float)Math.sin(inputV.lengthVector()));

        return new Quaternion((float)outputV.xCoord, (float)outputV.yCoord, (float)outputV.zCoord, outputA);
    }
View Full Code Here

        return (float)Math.sqrt(input.x * input.x + input.y * input.y + input.z * input.z + input.w * input.w);
    }

    public static Quaternion scalarMultiply(Quaternion input, float scalar)
    {
        return new Quaternion(input.x * scalar, input.y * scalar, input.z * scalar, input.w * scalar);
    }
View Full Code Here

        return new Quaternion(input.x * scalar, input.y * scalar, input.z * scalar, input.w * scalar);
    }

    public static Quaternion slerp(Quaternion q1, Quaternion q2, float t)
    {
        Quaternion qInterpolated = new Quaternion();

        if(QuaternionHelper.isEqual(q1, q2))
        {
            return q1;
        }
View Full Code Here

        return qInterpolated;
    }

    public static Quaternion conjugate(Quaternion q1)
    {
        return new Quaternion(-q1.x, -q1.y, -q1.z, q1.w);
    }
View Full Code Here

TOP

Related Classes of org.lwjgl.util.vector.Quaternion

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.