+ public void parse()\r
+ {\r
+ PDBChain tmpchain;\r
+ String line;\r
+ boolean modelFlag = false;\r
+ for (int i = 0; i < lineArray.size(); i++)\r
+ {\r
+\r
+ line = lineArray.elementAt(i).toString();\r
+\r
+ if (line.indexOf("HEADER") == 0)\r
+ {\r
+ id = line.substring(62, 67).trim();\r
+ continue;\r
+ }\r
+\r
+ if(line.indexOf("MODEL")==0)\r
+ modelFlag = true;\r
+\r
+ if(modelFlag && line.indexOf("ENDMDL")==0)\r
+ break;\r
+\r
+ if (line.indexOf("ATOM")==0 || line.indexOf("HETATM")==0 )\r
+ {\r
+ try {\r
+ Atom tmpatom = new Atom(line);\r
+\r
+ //Jalview is only interested in CA bonds????\r
+ if(!tmpatom.name.equals("CA"))\r
+ continue;\r
+\r
+ tmpchain = findChain(tmpatom.chain);\r
+ if ( tmpchain != null)\r
+ {\r
+ tmpchain.atoms.addElement(tmpatom);\r
+ }\r
+ else\r
+ {\r
+ tmpchain = new PDBChain(tmpatom.chain);\r
+ chains.addElement(tmpchain);\r
+ tmpchain.atoms.addElement(tmpatom);\r
+ }\r
+ } catch (NumberFormatException e) {\r
+ System.err.println("Caught" + e);\r
+ System.err.println("Record not added to PDB model:" +\r
+ lineArray.elementAt(i).toString());\r
+ }\r
+ }\r
+ }\r