diff --git a/src/dotnet/MonoGame.Extended/Math/EllipseF.cs b/src/dotnet/MonoGame.Extended/Math/EllipseF.cs index 2160e1b0..684a770f 100644 --- a/src/dotnet/MonoGame.Extended/Math/EllipseF.cs +++ b/src/dotnet/MonoGame.Extended/Math/EllipseF.cs @@ -67,6 +67,27 @@ namespace MonoGame.Extended && ellispse.RadiusY == RadiusY; } + public override bool Equals(object obj) + { + return obj is EllipseF && Equals((EllipseF)obj); + } + + public override int GetHashCode() + { + unchecked + { + var hashCode = Center.GetHashCode(); + hashCode = (hashCode * 397) ^ RadiusX.GetHashCode(); + hashCode = (hashCode * 397) ^ RadiusY.GetHashCode(); + return hashCode; + } + } + + public override string ToString() + { + return $"Centre: {Center}, RadiusX: {RadiusX}, RadiusY: {RadiusY}"; + } + public static bool operator ==(EllipseF first, EllipseF second) { return first.Equals(ref second); @@ -77,4 +98,4 @@ namespace MonoGame.Extended return !(first == second); } } -} \ No newline at end of file +}