/// <summary> /// Calculates the squared distance between two vectors. /// </summary> /// <param name="vector2">Extended SharpDX Vector2</param> /// <param name="toVector4">SharpDX Vector4</param> /// <returns>The squared distance between the two vectors.</returns> public static float DistanceSquared(this Vector2 vector2, Vector4 toVector4) { return Vector2.DistanceSquared(vector2, toVector4.ToVector2()); }
/// <summary> /// Extends a Vector2 to a Vector4. /// </summary> /// <param name="vector2">Extended SharpDX Vector2 (From)</param> /// <param name="toVector4">SharpDX Vector4 (To)</param> /// <param name="distance">Distance (float units)</param> /// <returns>Extended Vector2</returns> public static Vector2 Extend(this Vector2 vector2, Vector4 toVector4, float distance) { return vector2 + distance * (toVector4.ToVector2() - vector2).Normalized(); }
/// <summary> /// Extension wrapper for Vector2.Distance method /// </summary> /// <param name="v1">First vector</param> /// <param name="v2">Second vector</param> /// <returns>The distance between two vectors</returns> public static float Distance2D(this Vector4 v1, Vector4 v2) { return Vector2.Distance(v1.ToVector2(), v2.ToVector2()); }