Code/General/Vector2Extensions.cs
using ExtendedBox.Maths;
using Sandbox;
using System;
namespace ExtendedBox.General;
public static class Vector2Extensions
{
public static Vector2 SnapToGrid(this Vector2Int vector, float gridSize, bool sx = true, bool sy = true) =>
((Vector2)vector).SnapToGrid(gridSize, sx, sy);
public static Vector2Int FloorToInt(this Vector2 vector) =>
new(vector.x.FloorToInt(), vector.y.FloorToInt());
public static Vector2Int CeilToInt(this Vector2 vector) =>
new(vector.x.CeilToInt(), vector.y.CeilToInt());
public static Vector2Int RoundToInt(this Vector2 vector) =>
new(vector.x.RoundToInt(), vector.y.RoundToInt());
public static string ToString(this Vector2 vector, string? format)
{
return $"{vector.x.ToString(format)},{vector.y.ToString(format)}";
}
public static string ToString(this Vector2 vector, string? format, IFormatProvider? formatProvider)
{
return $"{vector.x.ToString(format, formatProvider)},{vector.y.ToString(format, formatProvider)}";
}
public static string ToString(this Vector2 vector, IFormatProvider? formatProvider)
{
return $"{vector.x.ToString(formatProvider)},{vector.y.ToString(formatProvider)}";
}
public static string ToString(this Vector2Int vector, string? format)
{
return $"{vector.x.ToString(format)},{vector.y.ToString(format)}";
}
public static string ToString(this Vector2Int vector, string? format, IFormatProvider? formatProvider)
{
return $"{vector.x.ToString(format, formatProvider)},{vector.y.ToString(format, formatProvider)}";
}
public static string ToString(this Vector2Int vector, IFormatProvider? formatProvider)
{
return $"{vector.x.ToString(formatProvider)},{vector.y.ToString(formatProvider)}";
}
}