Implement equality checks

This commit is contained in:
Michael Becker 2019-08-29 23:39:17 -04:00
parent c4aee131e3
commit 7c090f9f3d
2 changed files with 47 additions and 3 deletions

View File

@ -116,9 +116,31 @@ namespace UniversalEditor
clone.Y = mvarY;
clone.Z = mvarZ;
return clone;
}
}
public double GetLargestComponentValue()
public override bool Equals(object obj)
{
PositionVector3 pv = (PositionVector3)obj;
try
{
return (pv.X == X && pv.Y == Y && pv.Z == Z);
}
catch (Exception ex)
{
return false;
}
}
public static bool operator ==(PositionVector3 left, PositionVector3 right)
{
return left.Equals(right);
}
public static bool operator !=(PositionVector3 left, PositionVector3 right)
{
return !left.Equals(right);
}
public double GetLargestComponentValue()
{
if (mvarX > mvarY && mvarX > mvarZ) return mvarX;
if (mvarY > mvarX && mvarY > mvarZ) return mvarY;

View File

@ -223,5 +223,27 @@ namespace UniversalEditor
PositionVector4 clone = new PositionVector4(mvarX, mvarY, mvarZ, mvarW);
return clone;
}
}
public override bool Equals(object obj)
{
PositionVector4 pv = (PositionVector4)obj;
try
{
return (pv.X == X && pv.Y == Y && pv.Z == Z && pv.W == W);
}
catch (Exception ex)
{
return false;
}
}
public static bool operator ==(PositionVector4 left, PositionVector4 right)
{
return left.Equals(right);
}
public static bool operator !=(PositionVector4 left, PositionVector4 right)
{
return !left.Equals(right);
}
}
}