X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fanalysis%2FDna.java;h=799a8ed751d0e8199004dbda5a444283f1e41c3a;hb=5950febf61a94e527963a1eb68b0c59dd3387163;hp=f8bb9f929f497a61b34687b2ea7df726cb60a927;hpb=d579f105e3feca4b77ac93c52bb45f8cc39c39cd;p=jalview.git diff --git a/src/jalview/analysis/Dna.java b/src/jalview/analysis/Dna.java index f8bb9f9..799a8ed 100644 --- a/src/jalview/analysis/Dna.java +++ b/src/jalview/analysis/Dna.java @@ -69,7 +69,7 @@ public class Dna final private int dnaWidth; - final private Alignment dataset; + final private AlignmentI dataset; /* * Working variables for the translation. @@ -208,13 +208,13 @@ public class Dna for (int gd = 0; gd < selection.length; gd++) { SequenceI dna = selection[gd]; - DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRef(), + DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRefs(), jalview.datamodel.DBRefSource.DNACODINGDBS); if (dnarefs != null) { // intersect with pep List mappedrefs = new ArrayList(); - DBRefEntry[] refs = dna.getDBRef(); + DBRefEntry[] refs = dna.getDBRefs(); for (int d = 0; d < refs.length; d++) { if (refs[d].getMap() != null && refs[d].getMap().getMap() != null @@ -773,7 +773,7 @@ public class Dna { SequenceFeature[] sfs = dna.getSequenceFeatures(); Boolean fgstate; - DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRef(), + DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRefs(), DBRefSource.DNACODINGDBS); if (dnarefs != null) { @@ -852,13 +852,18 @@ public class Dna char[] originalSequence = sequence.toCharArray(); int length = originalSequence.length; char[] reversedSequence = new char[length]; - + int bases = 0; for (int i = 0; i < length; i++) { - reversedSequence[length - i - 1] = complement ? getComplement(originalSequence[i]) + char c = complement ? getComplement(originalSequence[i]) : originalSequence[i]; + reversedSequence[length - i - 1] = c; + if (!Comparison.isGap(c)) + { + bases++; + } } - SequenceI reversed = new Sequence(newName, reversedSequence, 1, length); + SequenceI reversed = new Sequence(newName, reversedSequence, 1, bases); return reversed; } @@ -873,7 +878,12 @@ public class Dna public static char getComplement(char c) { char result = c; - switch (c) { + switch (c) + { + case '-': + case '.': + case ' ': + break; case 'a': result = 't'; break;