/// <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); }
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); }