final private int dnaWidth;
- final private Alignment dataset;
+ final private AlignmentI dataset;
/*
* Working variables for the translation.
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<DBRefEntry> mappedrefs = new ArrayList<DBRefEntry>();
- 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
{
SequenceFeature[] sfs = dna.getSequenceFeatures();
Boolean fgstate;
- DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRef(),
+ DBRefEntry[] dnarefs = DBRefUtils.selectRefs(dna.getDBRefs(),
DBRefSource.DNACODINGDBS);
if (dnarefs != null)
{
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;
}
public static char getComplement(char c)
{
char result = c;
- switch (c) {
+ switch (c)
+ {
+ case '-':
+ case '.':
+ case ' ':
+ break;
case 'a':
result = 't';
break;