OSDN Git Service

refactored. Equals
authornomeu <nomeu@72ae2088-5f33-de11-a17b-0000e250a282>
Mon, 19 Sep 2011 12:40:50 +0000 (12:40 +0000)
committernomeu <nomeu@72ae2088-5f33-de11-a17b-0000e250a282>
Mon, 19 Sep 2011 12:40:50 +0000 (12:40 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/tdcgexplorer/trunk/tso2mqo@2032 72ae2088-5f33-de11-a17b-0000e250a282

General.cs
MqoWriter.cs
TSOFile.cs

index 4901185..0f11dda 100644 (file)
@@ -41,6 +41,11 @@ namespace Tso2MqoGui
         {\r
             return x.GetHashCode() ^ y.GetHashCode();\r
         }\r
+\r
+        public bool Equals(Point2 p)\r
+        {\r
+            return (x == p.x) && (y == p.y);\r
+        }\r
     }\r
 \r
     public partial struct Point3 : IComparable<Point3>\r
@@ -113,6 +118,11 @@ namespace Tso2MqoGui
         {\r
             return x.GetHashCode() ^ y.GetHashCode() ^ z.GetHashCode();\r
         }\r
+\r
+        public bool Equals(Point3 p)\r
+        {\r
+            return (x == p.x) && (y == p.y) && (z == p.z);\r
+        }\r
     }\r
 \r
     public partial struct Point4 : IComparable<Point4>\r
@@ -151,6 +161,11 @@ namespace Tso2MqoGui
         {\r
             return x.GetHashCode() ^ y.GetHashCode() ^ z.GetHashCode() ^ w.GetHashCode();\r
         }\r
+\r
+        public bool Equals(Point4 p)\r
+        {\r
+            return (x == p.x) && (y == p.y) && (z == p.z) && (w == p.w);\r
+        }\r
     }\r
 \r
     public partial struct Color3\r
index 9873c60..95fb388 100644 (file)
@@ -345,13 +345,22 @@ namespace Tso2MqoGui
 \r
         public override bool Equals(object obj)\r
         {\r
-            UVertex o   = obj as UVertex;\r
+            if (obj is UVertex)\r
+            {\r
+                UVertex v = (UVertex)obj;\r
+                return Pos.Equals(v.Pos) && Nrm.Equals(v.Nrm);\r
+            }\r
+            return false;\r
+        }\r
 \r
-            if(o == null)\r
+        public bool Equals(UVertex v)\r
+        {\r
+            if ((object)v == null)\r
+            {\r
                 return false;\r
+            }\r
 \r
-            return Pos.x==o.Pos.x && Pos.y==o.Pos.y && Pos.z==o.Pos.z\r
-                && Nrm.x==o.Nrm.x && Nrm.y==o.Nrm.y && Nrm.z==o.Nrm.z;\r
+            return Pos.Equals(v.Pos) && Nrm.Equals(v.Nrm);\r
         }\r
     }\r
 }\r
index f0ec1cc..acb91d7 100644 (file)
@@ -646,13 +646,19 @@ namespace Tso2MqoGui
 \r
         public override bool Equals(object obj)\r
         {\r
-            Vertex  o   = (Vertex)obj;\r
+            if (obj is Vertex)\r
+            {\r
+                Vertex v = (Vertex)obj;\r
+                return Pos.Equals(v.Pos) && Nrm.Equals(v.Nrm) && Tex.Equals(v.Tex)\r
+                     ^ Wgt.Equals(v.Wgt) && Idx.Equals(v.Idx);\r
+            }\r
+            return false;\r
+        }\r
 \r
-            return Pos.x==o.Pos.x && Pos.y==o.Pos.y && Pos.z==o.Pos.z\r
-                && Nrm.x==o.Nrm.x && Nrm.y==o.Nrm.y && Nrm.z==o.Nrm.z\r
-                && Tex.x==o.Tex.x && Tex.y==o.Tex.y && Wgt.w==o.Wgt.w\r
-                && Wgt.x==o.Wgt.x && Wgt.y==o.Wgt.y && Wgt.z==o.Wgt.z\r
-                && Idx  ==o.Idx;\r
+        public bool Equals(Vertex v)\r
+        {\r
+            return Pos.Equals(v.Pos) && Nrm.Equals(v.Nrm) && Tex.Equals(v.Tex)\r
+                 ^ Wgt.Equals(v.Wgt) && Idx.Equals(v.Idx);\r
         }\r
     }\r
 \r