From: jprocter Date: Thu, 6 Jan 2011 15:53:25 +0000 (+0000) Subject: JAL-730 X-Git-Tag: Release_2_7~320 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=9bfd2651e3fd3dbadf67f5831f56fb86b4626a46;p=jalview.git JAL-730 --- diff --git a/src/MCview/Atom.java b/src/MCview/Atom.java index 8b160ef..0a3bd39 100755 --- a/src/MCview/Atom.java +++ b/src/MCview/Atom.java @@ -50,9 +50,10 @@ public class Atom 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 +72,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) diff --git a/src/MCview/PDBfile.java b/src/MCview/PDBfile.java index c55a519..30f7e42 100755 --- a/src/MCview/PDBfile.java +++ b/src/MCview/PDBfile.java @@ -56,18 +56,18 @@ public class PDBfile extends jalview.io.AlignFile // TODO set the filename sensibly - try using data source name. id = safeName(getDataName()); - try - { chains = new Vector(); PDBChain tmpchain; - String line; + String line=null; boolean modelFlag = false; boolean terFlag = false; String lastID = ""; int index = 0; String atomnam = null; + try + { while ((line = nextLine()) != null) { if (line.indexOf("HEADER") == 0) @@ -185,6 +185,13 @@ public class PDBfile extends jalview.io.AlignFile System.out.println("OUT OF MEMORY LOADING PDB FILE"); throw new IOException("Out of memory loading PDB File"); } + catch (NumberFormatException ex) + { + if (line!=null) { + System.err.println("Couldn't read number from line:"); + System.err.println(line); + } + } } /**