diff --git a/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector3.cs b/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector3.cs index 8df3be85..bb055d89 100644 --- a/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector3.cs +++ b/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector3.cs @@ -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; diff --git a/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector4.cs b/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector4.cs index ca3c60e9..d56ae017 100644 --- a/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector4.cs +++ b/CSharp/Plugins/UniversalEditor.Plugins.Multimedia3D/PositionVector4.cs @@ -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); + } + } }