public static Vector2 Rotate(this Vector2 v, float degrees)
{
return v.RotateRadians(degrees * Mathf.Deg2Rad);
}
public static Vector2 RotateRadians(this Vector2 v, float radians)
{
var ca = Mathf.Cos(radians);
var sa = Mathf.Sin(radians);
return new Vector2(ca * v.x - sa * v.y, sa * v.x + ca * v.y);
}
public static Vector2 Rotate(this Vector2 v, float degrees)
{
return v.RotateRadians(degrees * Mathf.Deg2Rad);
}
public static Vector2 RotateRadians(this Vector2 v, float radians)
{
var ca = Mathf.Cos(radians);
var sa = Mathf.Sin(radians);
return new Vector2(ca * v.x - sa * v.y, sa * v.x + ca * v.y);
}