X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fext%2Fjmol%2FJmolParser.java;h=8bc5a986ebf291db9c8185324e7d24a1b347efa9;hb=a7a16a1cc2d9b2c840d50b02163cbc6327bd28bb;hp=2a43244cb6d6e3cff86e622900f930330205aec2;hpb=9d2408483e451285fd555c3cd6e0273977acbaa7;p=jalview.git diff --git a/src/jalview/ext/jmol/JmolParser.java b/src/jalview/ext/jmol/JmolParser.java index 2a43244..8bc5a98 100644 --- a/src/jalview/ext/jmol/JmolParser.java +++ b/src/jalview/ext/jmol/JmolParser.java @@ -117,9 +117,10 @@ public class JmolParser extends StructureFile implements JmolStatusListener // } // ; // instead, we distinguish .cif from non-.cif by filename - setStructureFileType(getDataName().toLowerCase(Locale.ROOT).endsWith(".cif") - ? PDBEntry.Type.MMCIF.toString() - : "PDB"); + setStructureFileType( + getDataName().toLowerCase(Locale.ROOT).endsWith(".cif") + ? PDBEntry.Type.MMCIF.toString() + : "PDB"); transformJmolModelToJalview(jmolModel.ms); } @@ -140,7 +141,7 @@ public class JmolParser extends StructureFile implements JmolStatusListener * params -o (output to sysout) -n (nodisplay) -x (exit when finished) * see http://wiki.jmol.org/index.php/Jmol_Application */ - + viewer = JalviewJmolBinding.getJmolData(this); // ensure the 'new' (DSSP) not 'old' (Ramachandran) SS method is used viewer.setBooleanProperty("defaultStructureDSSP", true); @@ -154,28 +155,32 @@ public class JmolParser extends StructureFile implements JmolStatusListener } return viewer; } - + public static Regex getNewAlphafoldValidator() { - Regex validator = new Regex("(AF-[A-Z]+[0-9]+[A-Z0-9]+-F1)"); + Regex validator = new Regex("(AF-[A-Z]+[0-9]+[A-Z0-9]+-F1)"); validator.setIgnoreCase(true); return validator; } - PDBEntry.Type jmolFiletype=null; + PDBEntry.Type jmolFiletype = null; + /** - * resolve a jmol filetype string and update the jmolFiletype field accordingly + * resolve a jmol filetype string and update the jmolFiletype field + * accordingly + * * @param jmolIdentifiedFileType * @return true if filetype was identified as MMCIF, PDB */ public boolean updateFileType(String jmolIdentifiedFileType) { - if (jmolIdentifiedFileType == null + if (jmolIdentifiedFileType == null || jmolIdentifiedFileType.trim().equals("")) { return false; } - if ("mmcif".equalsIgnoreCase(jmolIdentifiedFileType)) { + if ("mmcif".equalsIgnoreCase(jmolIdentifiedFileType)) + { jmolFiletype = PDBEntry.Type.MMCIF; return true; } @@ -183,10 +188,10 @@ public class JmolParser extends StructureFile implements JmolStatusListener { jmolFiletype = PDBEntry.Type.PDB; return true; - } + } return false; } - + public void transformJmolModelToJalview(ModelSet ms) throws IOException { try @@ -203,9 +208,9 @@ public class JmolParser extends StructureFile implements JmolStatusListener { setStructureFileType(jmolFiletype.toString()); } - + isMMCIF = PDBEntry.Type.MMCIF.equals(jmolFiletype); - + if (pdbId == null) { setId(safeName(getDataName())); @@ -215,7 +220,7 @@ public class JmolParser extends StructureFile implements JmolStatusListener { setId(pdbId); setPDBIdAvailable(true); - alphaFoldModel = alphaFold.search(pdbId) && isMMCIF; + alphaFoldModel = alphaFold.search(pdbId) && isMMCIF; } List significantAtoms = convertSignificantAtoms(ms); @@ -230,15 +235,16 @@ public class JmolParser extends StructureFile implements JmolStatusListener if (tmpchain != null) { tmpchain.atoms.addElement(tmpatom); - } else + } + else { - String tempFString=null; + String tempFString = null; if (isAlphafoldModel()) { tempFString = "Alphafold Reliability"; } - tmpchain = new PDBChain(getId(), tmpatom.chain,tempFString); + tmpchain = new PDBChain(getId(), tmpatom.chain, tempFString); getChains().add(tmpchain); tmpchain.atoms.addElement(tmpatom); } @@ -428,7 +434,7 @@ public class JmolParser extends StructureFile implements JmolStatusListener { int length = sq.getLength(); boolean ssFound = false; - Annotation asecstr[] = new Annotation[length + firstResNum - 1]; + Annotation asecstr[] = new Annotation[length + (firstResNum-sq.getStart())]; for (int p = 0; p < length; p++) { if (secstr[p] >= 'A' && secstr[p] <= 'z')