Ignore:
Timestamp:
07/11/14 08:58:02 (10 years ago)
Author:
rkrimmel
Message:

Fixed printAlignment() method

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ralph/src/main/java/de/ugoe/cs/autoquest/tasktrees/alignment/algorithms/SmithWatermanRepeated.java

    r1592 r1596  
    221221 
    222222        public void traceback() { 
    223                 MatrixEntry tmp = matrix[length1+1][0]; 
     223                MatrixEntry tmp = matrix[length1+1][0].getPrevious(); 
    224224                LinkedList<Integer> aligned1 = new LinkedList<Integer>(); 
    225225                LinkedList<Integer> aligned2 = new LinkedList<Integer>(); 
     
    237237 
    238238                int count = 0; 
    239                 for (Iterator<Integer> it = aligned1.descendingIterator(); it.hasNext();) { 
     239                for (Iterator<Integer> it = aligned1.iterator(); it.hasNext();) { 
    240240                        count++; 
    241241                        reversed1[reversed1.length - count] = it.next(); 
     
    243243                } 
    244244                count = 0; 
    245                 for (Iterator<Integer> it = aligned2.descendingIterator(); it.hasNext();) { 
     245                for (Iterator<Integer> it = aligned2.iterator(); it.hasNext();) { 
    246246                        count++; 
    247247                        reversed2[reversed2.length - count] = it.next(); 
     
    260260         
    261261        public void printAlignment() { 
    262                 MatrixEntry tmp = matrix[length1+1][0]; 
    263                 String aligned1 = ""; 
    264                 String aligned2 = ""; 
    265                 int count = 0; 
    266                 do 
    267                 { 
    268                         String append1=""; 
    269                         String append2=""; 
    270                                          
    271                         if(tmp.getXvalue() == Constants.GAP_SYMBOL) { 
    272                                 append1 = "  ___"; 
    273                         } 
    274                         else if(tmp.getXvalue() == Constants.UNMATCHED_SYMBOL) { 
    275                                 append1 = "  ..."; 
     262                int[] tmp1 = alignment.get(0).getSequence(); 
     263                int[] tmp2 = alignment.get(1).getSequence(); 
     264                for (int i=0; i< tmp1.length;i++) { 
     265                        if(tmp1[i] == Constants.GAP_SYMBOL) { 
     266                                System.out.print("  ___"); 
     267                        } 
     268                        else if(tmp1[i] == Constants.UNMATCHED_SYMBOL) { 
     269                                System.out.print("  ..."); 
    276270                        } 
    277271                        else { 
    278                                 append1 = String.format("%5d", tmp.getXvalue()); 
    279                         } 
    280  
    281                         if(tmp.getYvalue() == Constants.GAP_SYMBOL) { 
    282                                 append2 = "  ___"; 
    283                         } 
    284                         else if(tmp.getYvalue() == Constants.UNMATCHED_SYMBOL) { 
    285                                 append2 = "  ..."; 
     272                                System.out.format("%5d", tmp1[i]); 
     273                        } 
     274                         
     275                } 
     276                System.out.println(); 
     277                for (int i=0; i< tmp2.length;i++) { 
     278                        if(tmp2[i] == Constants.GAP_SYMBOL) { 
     279                                System.out.print("  ___"); 
     280                        } 
     281                        else if(tmp2[i] == Constants.UNMATCHED_SYMBOL) { 
     282                                System.out.print("  ..."); 
    286283                        } 
    287284                        else { 
    288                                 append2 = String.format("%5d", tmp.getYvalue()); 
    289                         } 
    290                         if(count != 0) 
    291                         { 
    292                                 aligned1 = append1 + aligned1; 
    293                                 aligned2 = append2 + aligned2; 
    294                         } 
    295                          
    296                         tmp = tmp.getPrevious(); 
    297                         count++; 
    298                          
    299                 } while(tmp.getPrevious() != null); 
    300                 System.out.println(aligned1); 
    301                 System.out.println(aligned2); 
     285                                System.out.format("%5d", tmp2[i]); 
     286                        } 
     287                         
     288                } 
     289                System.out.println(); 
     290                 
     291                 
     292         
    302293        } 
    303294         
Note: See TracChangeset for help on using the changeset viewer.