From a8c9987947127a8080d8a8cc24738631d75064af Mon Sep 17 00:00:00 2001 From: Valerio Mariani <valerio.mariani@unibas.ch> Date: Wed, 15 Jun 2011 10:06:17 +0200 Subject: [PATCH] Fiex bug with sequence offsets --- modules/seq/alg/src/merge_pairwise_alignments.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/seq/alg/src/merge_pairwise_alignments.cc b/modules/seq/alg/src/merge_pairwise_alignments.cc index 6bba7edd0..032e92ac9 100644 --- a/modules/seq/alg/src/merge_pairwise_alignments.cc +++ b/modules/seq/alg/src/merge_pairwise_alignments.cc @@ -55,7 +55,8 @@ void update_shifts(const AlignmentHandle& aln, res_index=-1; } else if (i > 0) { - res_index=s1.GetResidueIndex(i-1); + res_index=s1.GetResidueIndex(i-1)-s1.GetOffset(); +// res_index=s1.GetResidueIndex(i-1); } ShiftMap::iterator p=shifts.find(res_index); if (p!=shifts.end()) { @@ -111,7 +112,8 @@ SequenceHandle realign_sequence(const AlignmentHandle& aln, p=shifts.find(-1); } else if (i>0 && s1.GetOneLetterCode(i-1)!='-') { - p=shifts.find(s1.GetResidueIndex(i-1)); + p=shifts.find(s1.GetResidueIndex(i-1)-s1.GetOffset()); +// p=shifts.find(s1.GetResidueIndex(i-1)); } if (p!=shifts.end()) { int d=p->second-shift; @@ -139,6 +141,7 @@ AlignmentHandle MergePairwiseAlignments(const AlignmentList& pairwise_alns, update_shifts(*i, ref_seq, shifts); } + AlignmentHandle merged=CreateAlignment(); merged.AddSequence(shift_reference(ref_seq, shifts)); for (AlignmentList::const_iterator i=pairwise_alns.begin(), -- GitLab