JAL-2994 add a few future release points for good measure in Chimera path search...
[jalview.git] / src / MCview / Atom.java
index 894984a..904e307 100755 (executable)
@@ -20,6 +20,8 @@
  */
 package MCview;
 
+import jalview.schemes.ResidueProperties;
+
 import java.awt.Color;
 
 public class Atom
@@ -73,11 +75,13 @@ public class Atom
     name = str.substring(12, 15).trim();
 
     resName = str.substring(17, 20);
+    // JAL-1828 treat MSE Selenomethionine as MET (etc)
+    resName = ResidueProperties.getCanonicalAminoAcid(resName);
 
     chain = str.substring(21, 22);
 
     resNumber = Integer.parseInt(str.substring(22, 26).trim());
-    resNumIns = str.substring(22, 27);
+    resNumIns = str.substring(22, 27).trim();
     insCode = str.substring(26, 27).charAt(0);
     this.x = (new Float(str.substring(30, 38).trim()).floatValue());
     this.y = (new Float(str.substring(38, 46).trim()).floatValue());
@@ -105,6 +109,24 @@ public class Atom
     }
   }
 
+  @Override
+  public boolean equals(Object that)
+  {
+    if (this == that || that == null)
+    {
+      return true;
+    }
+    if (that instanceof Atom)
+    {
+      Atom other = (Atom) that;
+      return other.resName.equals(this.resName)
+              && other.resNumber == this.resNumber
+              && other.resNumIns.equals(this.resNumIns)
+              && other.chain.equals(this.chain);
+    }
+    return false;
+  }
+
   public Atom(float x, float y, float z)
   {
     this.x = x;