Example #1
0
        /// <summary>
        /// Normalizes the given vector.
        /// </summary>
        /// <param name="value">The vector which should be normalized.</param>
        /// <returns>A normalized vector.</returns>
        #region public static JVector Normalize(JVector value)
        public static FPVector Normalize(FPVector value)
        {
            FPVector result;

            FPVector.Normalize(ref value, out result);
            return(result);
        }
Example #2
0
        public static FPQuaternion AngleAxis(Fix64 angle, FPVector axis)
        {
            axis = axis * Fix64.Deg2Rad;
            axis.Normalize();

            Fix64 halfAngle = angle * Fix64.Deg2Rad * Fix64.Half;

            FPQuaternion rotation;
            Fix64        sin = Fix64.Sin(halfAngle);

            rotation.x = axis.x * sin;
            rotation.y = axis.y * sin;
            rotation.z = axis.z * sin;
            rotation.w = Fix64.Cos(halfAngle);

            return(rotation);
        }