X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=site%2Fj2s%2Fjalview%2Fext%2Fjmol%2FJmolCommands.js;fp=site%2Fj2s%2Fjalview%2Fext%2Fjmol%2FJmolCommands.js;h=b08a4e34313f5c05724e55a3a8c9119f967f9464;hp=495572c79c023ed986b47b61cff1f6001722c0f8;hb=b9b7a352eee79b7764c3b09c9d19663075061d8c;hpb=7301a2415adab88038b291fc54caeeb3a5a47a44 diff --git a/site/j2s/jalview/ext/jmol/JmolCommands.js b/site/j2s/jalview/ext/jmol/JmolCommands.js index 495572c..b08a4e3 100644 --- a/site/j2s/jalview/ext/jmol/JmolCommands.js +++ b/site/j2s/jalview/ext/jmol/JmolCommands.js @@ -1,69 +1,69 @@ -Clazz.declarePackage ("jalview.ext.jmol"); -Clazz.load (null, "jalview.ext.jmol.JmolCommands", ["jalview.structure.StructureMappingcommandSet", "jalview.util.Comparison", "java.lang.StringBuffer", "java.util.ArrayList"], function () { -c$ = Clazz.declareType (jalview.ext.jmol, "JmolCommands"); -c$.getColourBySequenceCommand = Clazz.defineMethod (c$, "getColourBySequenceCommand", -function (ssm, files, sequence, sr, fr, alignment) { -var cset = new java.util.ArrayList (); -for (var pdbfnum = 0; pdbfnum < files.length; pdbfnum++) { -var mapping = ssm.getMapping (files[pdbfnum]); -var command = new StringBuffer (); -var smc; -var str = new java.util.ArrayList (); -if (mapping == null || mapping.length < 1) { -continue; -}var lastPos = -1; -for (var s = 0; s < sequence[pdbfnum].length; s++) { -for (var sp, m = 0; m < mapping.length; m++) { -if (mapping[m].getSequence () === sequence[pdbfnum][s] && (sp = alignment.findIndex (sequence[pdbfnum][s])) > -1) { -var asp = alignment.getSequenceAt (sp); -for (var r = 0; r < asp.getLength (); r++) { -if (jalview.util.Comparison.isGap (asp.getCharAt (r))) { -continue; -}var pos = mapping[m].getPDBResNum (asp.findPosition (r)); -if (pos < 1 || pos == lastPos) { -continue; -}lastPos = pos; -var col = sr.getResidueBoxColour (sequence[pdbfnum][s], r); -if (fr != null) { -col = fr.findFeatureColour (col, sequence[pdbfnum][s], r); -}var newSelcom = (mapping[m].getChain () !== " " ? ":" + mapping[m].getChain () : "") + "/" + (pdbfnum + 1) + ".1" + ";color[" + col.getRed () + "," + col.getGreen () + "," + col.getBlue () + "]"; -if (command.length () > newSelcom.length && command.substring (command.length () - newSelcom.length).equals (newSelcom)) { -command = jalview.ext.jmol.JmolCommands.condenseCommand (command, pos); -continue; -}command.append (";"); -if (command.length () > 51200) { -str.add (command.toString ()); -command.setLength (0); -}command.append ("select " + pos); -command.append (newSelcom); -} -break; -}} -} -{ -str.add (command.toString ()); -command.setLength (0); -}cset.add ( new jalview.structure.StructureMappingcommandSet (jalview.ext.jmol.JmolCommands, files[pdbfnum], str.toArray ( new Array (str.size ())))); -} -return cset.toArray ( new Array (cset.size ())); -}, "jalview.structure.StructureSelectionManager,~A,~A,jalview.api.SequenceRenderer,jalview.api.FeatureRenderer,jalview.datamodel.AlignmentI"); -c$.condenseCommand = Clazz.defineMethod (c$, "condenseCommand", -function (command, pos) { -var p = command.length (); -var q = p; -do { -p -= 6; -if (p < 1) { -p = 0; -};} while ((q = command.indexOf ("select", p)) == -1 && p > 0); -var sb = new StringBuffer (command.substring (0, q + 7)); -command = command.$delete (0, q + 7); -var start; -if (command.indexOf ("-") > -1) { -start = command.substring (0, command.indexOf ("-")); -} else { -start = command.substring (0, command.indexOf (":")); -}sb.append (start + "-" + pos + command.substring (command.indexOf (":"))); -return sb; -}, "StringBuffer,~N"); -}); +Clazz.declarePackage ("jalview.ext.jmol"); +Clazz.load (null, "jalview.ext.jmol.JmolCommands", ["jalview.structure.StructureMappingcommandSet", "jalview.util.Comparison", "java.lang.StringBuffer", "java.util.ArrayList"], function () { +c$ = Clazz.declareType (jalview.ext.jmol, "JmolCommands"); +c$.getColourBySequenceCommand = Clazz.defineMethod (c$, "getColourBySequenceCommand", +function (ssm, files, sequence, sr, fr, alignment) { +var cset = new java.util.ArrayList (); +for (var pdbfnum = 0; pdbfnum < files.length; pdbfnum++) { +var mapping = ssm.getMapping (files[pdbfnum]); +var command = new StringBuffer (); +var smc; +var str = new java.util.ArrayList (); +if (mapping == null || mapping.length < 1) { +continue; +}var lastPos = -1; +for (var s = 0; s < sequence[pdbfnum].length; s++) { +for (var sp, m = 0; m < mapping.length; m++) { +if (mapping[m].getSequence () === sequence[pdbfnum][s] && (sp = alignment.findIndex (sequence[pdbfnum][s])) > -1) { +var asp = alignment.getSequenceAt (sp); +for (var r = 0; r < asp.getLength (); r++) { +if (jalview.util.Comparison.isGap (asp.getCharAt (r))) { +continue; +}var pos = mapping[m].getPDBResNum (asp.findPosition (r)); +if (pos < 1 || pos == lastPos) { +continue; +}lastPos = pos; +var col = sr.getResidueBoxColour (sequence[pdbfnum][s], r); +if (fr != null) { +col = fr.findFeatureColour (col, sequence[pdbfnum][s], r); +}var newSelcom = (mapping[m].getChain () !== " " ? ":" + mapping[m].getChain () : "") + "/" + (pdbfnum + 1) + ".1" + ";color[" + col.getRed () + "," + col.getGreen () + "," + col.getBlue () + "]"; +if (command.length () > newSelcom.length && command.substring (command.length () - newSelcom.length).equals (newSelcom)) { +command = jalview.ext.jmol.JmolCommands.condenseCommand (command, pos); +continue; +}command.append (";"); +if (command.length () > 51200) { +str.add (command.toString ()); +command.setLength (0); +}command.append ("select " + pos); +command.append (newSelcom); +} +break; +}} +} +{ +str.add (command.toString ()); +command.setLength (0); +}cset.add ( new jalview.structure.StructureMappingcommandSet (jalview.ext.jmol.JmolCommands, files[pdbfnum], str.toArray ( new Array (str.size ())))); +} +return cset.toArray ( new Array (cset.size ())); +}, "jalview.structure.StructureSelectionManager,~A,~A,jalview.api.SequenceRenderer,jalview.api.FeatureRenderer,jalview.datamodel.AlignmentI"); +c$.condenseCommand = Clazz.defineMethod (c$, "condenseCommand", +function (command, pos) { +var p = command.length (); +var q = p; +do { +p -= 6; +if (p < 1) { +p = 0; +};} while ((q = command.indexOf ("select", p)) == -1 && p > 0); +var sb = new StringBuffer (command.substring (0, q + 7)); +command = command.$delete (0, q + 7); +var start; +if (command.indexOf ("-") > -1) { +start = command.substring (0, command.indexOf ("-")); +} else { +start = command.substring (0, command.indexOf (":")); +}sb.append (start + "-" + pos + command.substring (command.indexOf (":"))); +return sb; +}, "StringBuffer,~N"); +});