/*\r
* Jalview - A Sequence Alignment Editor and Viewer\r
- * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
*\r
* This program is free software; you can redistribute it and/or\r
* modify it under the terms of the GNU General Public License\r
int res;\r
int i;\r
int j = 0;\r
- String seq;\r
+ char [] seq;\r
\r
while (j < seqs.size())\r
{\r
seq = ( (SequenceI) seqs.elementAt(j)).getSequence();\r
\r
- int end_j = seq.length() - 1;\r
+ int end_j = seq.length - 1;\r
\r
for (i = start; i <= end_j; i++)\r
{\r
- if ( (seq.length() - 1) < i)\r
+ if ( (seq.length - 1) < i)\r
{\r
res = 23;\r
}\r
else\r
{\r
- res = ( (Integer) ResidueProperties.aaHash.get(seq.charAt(i) +\r
- "")).intValue();\r
+ res = ResidueProperties.aaIndex[seq[i]];\r
}\r
\r
cons2[i][res]++;\r
ResidueColour[19] = colours[0]; // V\r
}\r
\r
- public Color findColour(String s)\r
+ public Color findColour(char c)\r
{\r
return Color.pink;\r
}\r
\r
- public Color findColour(String s, int j)\r
+ public Color findColour(char c, int j)\r
{\r
- if ( (threshold != 0) && !aboveThreshold(s, j))\r
+ Color currentColour;\r
+\r
+\r
+ if ( cons2.length<=j || (threshold != 0 && !aboveThreshold(c, j)))\r
{\r
return Color.white;\r
}\r
\r
- int i = ( (Integer) ResidueProperties.aaHash.get(s)).intValue();\r
+ int i = ResidueProperties.aaIndex[c];\r
\r
- Color c = Color.white;\r
+ currentColour = Color.white;\r
\r
if (i > 19)\r
{\r
- return c;\r
+ return currentColour;\r
}\r
\r
- for (int k = 0; k < ResidueColour[i].conses.length; k++)\r
+ for (int k = 0; k < ResidueColour[i].conses.length; k++)\r
+ {\r
+ if (ResidueColour[i].conses[k].isConserved(cons2, j, size))\r
{\r
- if (ResidueColour[i].conses[k].isConserved(cons2, j, size))\r
- {\r
- c = ResidueColour[i].c;\r
- }\r
+ currentColour = ResidueColour[i].c;\r
}\r
+ }\r
\r
if (i == 4)\r
{\r
if (conses[27].isConserved(cons2, j, size))\r
{\r
- c = (Color) colhash.get("PINK");\r
+ currentColour = (Color) colhash.get("PINK");\r
}\r
}\r
\r
- return c;\r
+ if(conservationColouring)\r
+ currentColour = applyConservation(currentColour, j);\r
+\r
+ return currentColour;\r
}\r
}\r
\r