X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fanalysis%2FDna.java;h=00793bec35b906eeaacd0b58f7170230c8df70f2;hb=ad15cff29620f960119f80176f1fd443da9f6763;hp=1ce22f2265c8f8632ff84d3a5f56636519b2b8b1;hpb=a8f483d04205bb8273ee311c12968b7e86d205fa;p=jalview.git diff --git a/src/jalview/analysis/Dna.java b/src/jalview/analysis/Dna.java index 1ce22f2..00793be 100644 --- a/src/jalview/analysis/Dna.java +++ b/src/jalview/analysis/Dna.java @@ -1,19 +1,21 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.analysis; @@ -126,7 +128,8 @@ public class Dna { SequenceI newseq = translateCodingRegion(selection[s], seqstring[s], viscontigs, codons, gapCharacter, - (product != null) ? product[s] : null, false); // possibly anonymous + (product != null) ? product[s] : null, false); // possibly + // anonymous // product if (newseq != null) { @@ -422,7 +425,9 @@ public class Dna * Definition of global ORF alignment reference frame * @param gapCharacter * @return sequence ready to be added to alignment. - * @deprecated Use {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)} instead + * @deprecated Use + * {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)} + * instead */ public static SequenceI translateCodingRegion(SequenceI selection, String seqstring, int[] viscontigs, AlignedCodonFrame codons, @@ -444,7 +449,8 @@ public class Dna * @param codons * Definition of global ORF alignment reference frame * @param gapCharacter - * @param starForStop when true stop codons will translate as '*', otherwise as 'X' + * @param starForStop + * when true stop codons will translate as '*', otherwise as 'X' * @return sequence ready to be added to alignment. */ public static SequenceI translateCodingRegion(SequenceI selection, @@ -507,7 +513,7 @@ public class Dna // edit scontigs skipint[0] = vismapping.shift(skipint[0]); skipint[1] = vismapping.shift(skipint[1]); - for (vc = 0; vc < scontigs.length; ) + for (vc = 0; vc < scontigs.length;) { if (scontigs[vc + 1] < skipint[0]) { @@ -515,16 +521,19 @@ public class Dna vc += 2; continue; } - if (scontigs[vc]>skipint[1]) + if (scontigs[vc] > skipint[1]) { // finished editing so break; } - // Edit the contig list to include the skipped region which did not translate + // Edit the contig list to include the skipped region which did + // not translate int[] t; // from : s1 e1 s2 e2 s3 e3 - // to s: s1 e1 s2 k0 k1 e2 s3 e3 - // list increases by one unless one boundary (s2==k0 or e2==k1) matches, and decreases by one if skipint intersects whole visible contig + // to s: s1 e1 s2 k0 k1 e2 s3 e3 + // list increases by one unless one boundary (s2==k0 or e2==k1) + // matches, and decreases by one if skipint intersects whole + // visible contig if (scontigs[vc] <= skipint[0]) { if (skipint[0] == scontigs[vc]) @@ -534,11 +543,11 @@ public class Dna if (scontigs[vc + 1] > skipint[1]) { scontigs[vc] = skipint[1]; - vc+=2; + vc += 2; } else { - if (scontigs[vc+1]==skipint[1]) + if (scontigs[vc + 1] == skipint[1]) { // remove the contig t = new int[scontigs.length - 2]; @@ -549,32 +558,38 @@ public class Dna if (vc + 2 < t.length) { System.arraycopy(scontigs, vc + 2, t, vc, t.length - - vc + 2); + - vc + 2); } - scontigs=t; - } else { + scontigs = t; + } + else + { // truncate contig to before the skipint region - scontigs[vc+1] = skipint[0]-1; - vc+=2; + scontigs[vc + 1] = skipint[0] - 1; + vc += 2; } } } else { // scontig starts before start of skipint - if (scontigs[vc+1]