X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2Fgff%2FExonerateHelper.java;h=303a5acf2e9c9254c6b1fb6023505395f0703dbb;hb=refs%2Fheads%2Ffeature%2FJAL-3251biotypedMappings;hp=873fd2720e8f4f63dfdf402a3a9375d6027a7636;hpb=136c0793b90b72b928c4d77dc109dd5c644e00d3;p=jalview.git diff --git a/src/jalview/io/gff/ExonerateHelper.java b/src/jalview/io/gff/ExonerateHelper.java index 873fd27..303a5ac 100644 --- a/src/jalview/io/gff/ExonerateHelper.java +++ b/src/jalview/io/gff/ExonerateHelper.java @@ -164,8 +164,8 @@ public class ExonerateHelper extends Gff2Helper */ SequenceI mapFromSequence = seq; SequenceI mapToSequence = mappedSequence; - if ((type == MappingType.NucleotideToPeptide && featureIsOnTarget) - || (type == MappingType.PeptideToNucleotide && !featureIsOnTarget)) + if ((MappingType.isDnaToPeptide(type) && featureIsOnTarget) + || (MappingType.isPeptideToDna(type) && !featureIsOnTarget)) { mapFromSequence = mappedSequence; mapToSequence = seq; @@ -267,8 +267,8 @@ public class ExonerateHelper extends Gff2Helper { fromStart = alignToStart; toStart = alignFromStart; - toEnd = forwardStrand ? toStart + alignCount - 1 : toStart - - (alignCount - 1); + toEnd = forwardStrand ? toStart + alignCount - 1 + : toStart - (alignCount - 1); int toLength = Math.abs(toEnd - toStart) + 1; int fromLength = toLength * type.getFromRatio() / type.getToRatio(); fromEnd = fromStart + fromLength - 1; @@ -298,7 +298,7 @@ public class ExonerateHelper extends Gff2Helper } /** - * Returns a MappingType depending on the exonerate 'model' value. + * Returns a MappingType depending on the exonerate 'model' value * * @param model * @return @@ -307,14 +307,25 @@ public class ExonerateHelper extends Gff2Helper { MappingType result = null; - if (model.contains(PROTEIN2DNA) || model.contains(PROTEIN2GENOME)) + if (model.contains(PROTEIN2GENOME)) { - result = MappingType.PeptideToNucleotide; + result = MappingType.PeptideToGenome; } - else if (model.contains(CODING2CODING) || model.contains(CODING2GENOME) - || model.contains(CDNA2GENOME) || model.contains(GENOME2GENOME)) + else if (model.contains(PROTEIN2DNA)) { - result = MappingType.NucleotideToNucleotide; + result = MappingType.PeptideToCds; + } + else if (model.contains(CODING2GENOME)) + { + result = MappingType.CdsToGenome; + } + else if (model.contains(CDNA2GENOME)) + { + result = MappingType.CdnaToGenome; + } + else if (model.contains(CODING2CODING) || model.contains(GENOME2GENOME)) + { + result = MappingType.GenomeToCdna; } return result; }