X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FMCview%2FAtom.java;h=1502f4e72da9798ecf8270ddaec1dc016d205868;hb=61df2ddd377ad0171a6d203fb9db2e1fa8ba5be6;hp=8e5cc4d12581d8d2ac45267e50cdb75f35e2c733;hpb=d423f22792e47dbc800ae220a58677f988971d06;p=jalview.git diff --git a/src/MCview/Atom.java b/src/MCview/Atom.java index 8e5cc4d..1502f4e 100755 --- a/src/MCview/Atom.java +++ b/src/MCview/Atom.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -45,14 +45,18 @@ public class Atom public String chain; + /** + * this is a temporary value - designed to store the position in sequence that this atom corresponds to after aligning the chain to a SequenceI object. Do not rely on its value being correct when visualizing sequence colourings on the structure - use the StructureSelectionManager's mapping instead. + */ public int alignmentMapping = -1; public int atomIndex; public float occupancy = 0; - + public float tfactor = 0; - + // need these if we ever want to export Atom data + // public boolean tfacset=true,occset=true; public boolean isSelected = false; public Atom(String str) @@ -71,9 +75,22 @@ public class Atom this.x = (float) (new Float(str.substring(30, 38).trim()).floatValue()); this.y = (float) (new Float(str.substring(38, 46).trim()).floatValue()); this.z = (float) (new Float(str.substring(47, 55).trim()).floatValue()); - occupancy = (float) (new Float(str.substring(54, 60).trim()) - .floatValue()); - tfactor = (float) (new Float(str.substring(60, 66).trim()).floatValue()); + // optional entries - see JAL-730 + String tm = str.substring(54, 60).trim(); + if (tm.length()>0) { + occupancy = (float) (new Float(tm)).floatValue(); + } else { + occupancy = 1f; // default occupancy + // see note above: occset=false; + } + tm = str.substring(60, 66).trim(); + if (tm.length()>0) + { + tfactor = (float) (new Float(tm).floatValue()); + } else { + tfactor = 1f; + //see note above: tfacset=false; + } } public Atom(float x, float y, float z)