JAL-2416 better encapsulated 'constants' for BLOSUM62, PAM250
[jalview.git] / src / jalview / schemes / Blosum62ColourScheme.java
index 53670e3..58e12b7 100755 (executable)
@@ -20,6 +20,8 @@
  */
 package jalview.schemes;
 
+import jalview.analysis.scoremodels.PairwiseSeqScoreModel;
+import jalview.analysis.scoremodels.ScoreModels;
 import jalview.datamodel.AnnotatedCollectionI;
 import jalview.datamodel.SequenceCollectionI;
 import jalview.datamodel.SequenceI;
@@ -53,11 +55,12 @@ public class Blosum62ColourScheme extends ResidueColourScheme
   public Color findColour(char res, int j, SequenceI seq,
           String consensusResidue, float pid)
   {
+    PairwiseSeqScoreModel sm = ScoreModels.getInstance().getBlosum62();
+
     /*
-     * compare as upper case; note toUpperCase does nothing 
-     * if the string is already uppercase
+     * compare as upper case; note consensusResidue is 
+     * always computed as uppercase
      */
-    consensusResidue = consensusResidue.toUpperCase();
     if ('a' <= res && res <= 'z')
     {
       res -= ('a' - 'A');
@@ -76,14 +79,15 @@ public class Blosum62ColourScheme extends ResidueColourScheme
     }
     else
     {
-      int c = 0;
+      float score = 0;
 
       for (char consensus : consensusResidue.toCharArray())
       {
-        c += ResidueProperties.getBLOSUM62(consensus, res);
+        score += sm.getPairwiseScore(consensus, res);
+        // score += ResidueProperties.getBLOSUM62(consensus, res);
       }
 
-      if (c > 0)
+      if (score > 0)
       {
         colour = LIGHT_BLUE;
       }