JAL-1807 test
[jalviewjs.git] / bin / jalview / util / Comparison.js
index e46a616..29499bb 100644 (file)
-Clazz.declarePackage ("jalview.util");\r
-Clazz.load (null, "jalview.util.Comparison", ["java.util.ArrayList"], function () {\r
-c$ = Clazz.declareType (jalview.util, "Comparison");\r
-c$.compare = Clazz.defineMethod (c$, "compare", \r
-function (ii, jj) {\r
-return jalview.util.Comparison.compare (ii, jj, 0, ii.getLength () - 1);\r
-}, "jalview.datamodel.SequenceI,jalview.datamodel.SequenceI");\r
-c$.compare = Clazz.defineMethod (c$, "compare", \r
-function (ii, jj, start, end) {\r
-var si = ii.getSequenceAsString ();\r
-var sj = jj.getSequenceAsString ();\r
-var ilen = si.length - 1;\r
-var jlen = sj.length - 1;\r
-while (jalview.util.Comparison.isGap (si.charAt (start + ilen))) {\r
-ilen--;\r
-}\r
-while (jalview.util.Comparison.isGap (sj.charAt (start + jlen))) {\r
-jlen--;\r
-}\r
-var count = 0;\r
-var match = 0;\r
-var pid = -1;\r
-if (ilen > jlen) {\r
-for (var j = 0; j < jlen; j++) {\r
-if (si.substring (start + j, start + j + 1).equals (sj.substring (start + j, start + j + 1))) {\r
-match++;\r
-}count++;\r
-}\r
-pid = match / ilen * 100;\r
-} else {\r
-for (var j = 0; j < jlen; j++) {\r
-if (si.substring (start + j, start + j + 1).equals (sj.substring (start + j, start + j + 1))) {\r
-match++;\r
-}count++;\r
-}\r
-pid = match / jlen * 100;\r
-}return pid;\r
-}, "jalview.datamodel.SequenceI,jalview.datamodel.SequenceI,~N,~N");\r
-c$.PID = Clazz.defineMethod (c$, "PID", \r
-function (seq1, seq2) {\r
-return jalview.util.Comparison.PID (seq1, seq2, 0, seq1.length);\r
-}, "~S,~S");\r
-c$.PID = Clazz.defineMethod (c$, "PID", \r
-function (seq1, seq2, start, end) {\r
-return jalview.util.Comparison.PID (seq1, seq2, start, end, true, false);\r
-}, "~S,~S,~N,~N");\r
-c$.PID = Clazz.defineMethod (c$, "PID", \r
-function (seq1, seq2, start, end, wcGaps, ungappedOnly) {\r
-var s1len = seq1.length;\r
-var s2len = seq2.length;\r
-var len = Math.min (s1len, s2len);\r
-if (end < len) {\r
-len = end;\r
-}if (len < start) {\r
-start = len - 1;\r
-}var elen = len - start;\r
-var bad = 0;\r
-var chr1;\r
-var chr2;\r
-var agap;\r
-for (var i = start; i < len; i++) {\r
-chr1 = seq1.charAt (i);\r
-chr2 = seq2.charAt (i);\r
-agap = jalview.util.Comparison.isGap (chr1) || jalview.util.Comparison.isGap (chr2);\r
-if ('a' <= chr1 && chr1 <= 'z') {\r
-chr1 = String.fromCharCode (chr1.charCodeAt (0) - 32);\r
-}if ('a' <= chr2 && chr2 <= 'z') {\r
-chr2 = String.fromCharCode (chr2.charCodeAt (0) - 32);\r
-}if (chr1 != chr2) {\r
-if (agap) {\r
-if (ungappedOnly) {\r
-elen--;\r
-} else if (!wcGaps) {\r
-bad++;\r
-}} else {\r
-bad++;\r
-}}}\r
-if (elen < 1) {\r
-return 0;\r
-}return (100 * (elen - bad)) / elen;\r
-}, "~S,~S,~N,~N,~B,~B");\r
-c$.isGap = Clazz.defineMethod (c$, "isGap", \r
-function (c) {\r
-return (c == '-' || c == '.' || c == ' ') ? true : false;\r
-}, "~S");\r
-c$.isNucleotide = Clazz.defineMethod (c$, "isNucleotide", \r
-function (seqs) {\r
-if (seqs == null) {\r
-return false;\r
-}var ntCount = 0;\r
-var aaCount = 0;\r
-for (var seq, $seq = 0, $$seq = seqs; $seq < $$seq.length && ((seq = $$seq[$seq]) || true); $seq++) {\r
-if (seq == null) {\r
-continue;\r
-}for (var c, $c = 0, $$c = seq.getSequence (); $c < $$c.length && ((c = $$c[$c]) || true); $c++) {\r
-if ('a' <= c && c <= 'z') {\r
-c = String.fromCharCode (c.charCodeAt (0) - 32);\r
-}if (c == 'A' || c == 'G' || c == 'C' || c == 'T' || c == 'U') {\r
-ntCount++;\r
-} else if (!jalview.util.Comparison.isGap (c)) {\r
-aaCount++;\r
-}}\r
-}\r
-if (ntCount * 100 > 85 * (ntCount + aaCount)) {\r
-return true;\r
-} else {\r
-return false;\r
-}}, "~A");\r
-c$.isNucleotide2 = Clazz.defineMethod (c$, "isNucleotide2", \r
-function (seqs) {\r
-if (seqs == null) {\r
-return false;\r
-}var flattened =  new java.util.ArrayList ();\r
-for (var ss, $ss = 0, $$ss = seqs; $ss < $$ss.length && ((ss = $$ss[$ss]) || true); $ss++) {\r
-for (var s, $s = 0, $$s = ss; $s < $$s.length && ((s = $$s[$s]) || true); $s++) {\r
-flattened.add (s);\r
-}\r
-}\r
-var oneDArray = flattened.toArray ( new Array (flattened.size ()));\r
-return jalview.util.Comparison.isNucleotide (oneDArray);\r
-}, "~A");\r
-Clazz.defineStatics (c$,\r
-"EIGHTY_FIVE", 85,\r
-"TO_UPPER_CASE", 32,\r
-"GAP_SPACE", ' ',\r
-"GAP_DOT", '.',\r
-"GAP_DASH", '-');\r
-c$.GapChars = c$.prototype.GapChars =  String.instantialize ( Clazz.newCharArray (-1, [' ', '.', '-']));\r
-Clazz.defineStatics (c$,\r
-"caseShift", 32);\r
-});\r
+Clazz.declarePackage ("jalview.util");
+Clazz.load (null, "jalview.util.Comparison", ["java.util.ArrayList"], function () {
+c$ = Clazz.declareType (jalview.util, "Comparison");
+c$.compare = Clazz.defineMethod (c$, "compare", 
+function (ii, jj) {
+return jalview.util.Comparison.compare (ii, jj, 0, ii.getLength () - 1);
+}, "jalview.datamodel.SequenceI,jalview.datamodel.SequenceI");
+c$.compare = Clazz.defineMethod (c$, "compare", 
+function (ii, jj, start, end) {
+var si = ii.getSequenceAsString ();
+var sj = jj.getSequenceAsString ();
+var ilen = si.length - 1;
+var jlen = sj.length - 1;
+while (jalview.util.Comparison.isGap (si.charAt (start + ilen))) {
+ilen--;
+}
+while (jalview.util.Comparison.isGap (sj.charAt (start + jlen))) {
+jlen--;
+}
+var count = 0;
+var match = 0;
+var pid = -1;
+if (ilen > jlen) {
+for (var j = 0; j < jlen; j++) {
+if (si.substring (start + j, start + j + 1).equals (sj.substring (start + j, start + j + 1))) {
+match++;
+}count++;
+}
+pid = match / ilen * 100;
+} else {
+for (var j = 0; j < jlen; j++) {
+if (si.substring (start + j, start + j + 1).equals (sj.substring (start + j, start + j + 1))) {
+match++;
+}count++;
+}
+pid = match / jlen * 100;
+}return pid;
+}, "jalview.datamodel.SequenceI,jalview.datamodel.SequenceI,~N,~N");
+c$.PID = Clazz.defineMethod (c$, "PID", 
+function (seq1, seq2) {
+return jalview.util.Comparison.PID (seq1, seq2, 0, seq1.length);
+}, "~S,~S");
+c$.PID = Clazz.defineMethod (c$, "PID", 
+function (seq1, seq2, start, end) {
+return jalview.util.Comparison.PID (seq1, seq2, start, end, true, false);
+}, "~S,~S,~N,~N");
+c$.PID = Clazz.defineMethod (c$, "PID", 
+function (seq1, seq2, start, end, wcGaps, ungappedOnly) {
+var s1len = seq1.length;
+var s2len = seq2.length;
+var len = Math.min (s1len, s2len);
+if (end < len) {
+len = end;
+}if (len < start) {
+start = len - 1;
+}var elen = len - start;
+var bad = 0;
+var chr1;
+var chr2;
+var agap;
+for (var i = start; i < len; i++) {
+chr1 = seq1.charAt (i);
+chr2 = seq2.charAt (i);
+agap = jalview.util.Comparison.isGap (chr1) || jalview.util.Comparison.isGap (chr2);
+if ('a' <= chr1 && chr1 <= 'z') {
+chr1 = String.fromCharCode (chr1.charCodeAt (0) - 32);
+}if ('a' <= chr2 && chr2 <= 'z') {
+chr2 = String.fromCharCode (chr2.charCodeAt (0) - 32);
+}if (chr1 != chr2) {
+if (agap) {
+if (ungappedOnly) {
+elen--;
+} else if (!wcGaps) {
+bad++;
+}} else {
+bad++;
+}}}
+if (elen < 1) {
+return 0;
+}return (100 * (elen - bad)) / elen;
+}, "~S,~S,~N,~N,~B,~B");
+c$.isGap = Clazz.defineMethod (c$, "isGap", 
+function (c) {
+return (c == '-' || c == '.' || c == ' ') ? true : false;
+}, "~S");
+c$.isNucleotide = Clazz.defineMethod (c$, "isNucleotide", 
+function (seqs) {
+if (seqs == null) {
+return false;
+}var ntCount = 0;
+var aaCount = 0;
+for (var seq, $seq = 0, $$seq = seqs; $seq < $$seq.length && ((seq = $$seq[$seq]) || true); $seq++) {
+if (seq == null) {
+continue;
+}for (var c, $c = 0, $$c = seq.getSequence (); $c < $$c.length && ((c = $$c[$c]) || true); $c++) {
+if ('a' <= c && c <= 'z') {
+c = String.fromCharCode (c.charCodeAt (0) - 32);
+}if (c == 'A' || c == 'G' || c == 'C' || c == 'T' || c == 'U') {
+ntCount++;
+} else if (!jalview.util.Comparison.isGap (c)) {
+aaCount++;
+}}
+}
+if (ntCount * 100 > 85 * (ntCount + aaCount)) {
+return true;
+} else {
+return false;
+}}, "~A");
+c$.isNucleotide2 = Clazz.defineMethod (c$, "isNucleotide2", 
+function (seqs) {
+if (seqs == null) {
+return false;
+}var flattened =  new java.util.ArrayList ();
+for (var ss, $ss = 0, $$ss = seqs; $ss < $$ss.length && ((ss = $$ss[$ss]) || true); $ss++) {
+for (var s, $s = 0, $$s = ss; $s < $$s.length && ((s = $$s[$s]) || true); $s++) {
+flattened.add (s);
+}
+}
+var oneDArray = flattened.toArray ( new Array (flattened.size ()));
+return jalview.util.Comparison.isNucleotide (oneDArray);
+}, "~A");
+Clazz.defineStatics (c$,
+"EIGHTY_FIVE", 85,
+"TO_UPPER_CASE", 32,
+"GAP_SPACE", ' ',
+"GAP_DOT", '.',
+"GAP_DASH", '-');
+c$.GapChars = c$.prototype.GapChars =  String.instantialize ( Clazz.newCharArray (-1, [' ', '.', '-']));
+Clazz.defineStatics (c$,
+"caseShift", 32);
+});