public static Vector2 ClampMagnitude(this Vector2 vector2, float min, float max) { var magSquared = vector2.SquareMagnitude(); if (magSquared < Pow(min, 2)) { return(vector2 / vector2.Magnitude() * min); } if (magSquared > Pow(max, 2)) { return(vector2 / vector2.Magnitude() * max); } return(vector2); }