X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fschemes%2FResidueColourScheme.java;h=b0a5caa81f8f172cb75d9d326521c5cd65fb63a0;hb=193558cf2b5905e77fd402cf2fc204adcaa74b69;hp=95946f92c26d8f15522d232ce4728256f96ba226;hpb=bcfc2937c9284fb9611008dbcfa712f14447dd1f;p=jalview.git diff --git a/src/jalview/schemes/ResidueColourScheme.java b/src/jalview/schemes/ResidueColourScheme.java index 95946f9..b0a5caa 100755 --- a/src/jalview/schemes/ResidueColourScheme.java +++ b/src/jalview/schemes/ResidueColourScheme.java @@ -4,9 +4,9 @@ import jalview.datamodel.*; import java.util.*; import java.awt.*; -public class ResidueColourScheme implements ColourSchemeI { +public class ResidueColourScheme implements ColourSchemeI{ Color [] colors; - int threshold = 90; + int threshold = 0; public ResidueColourScheme(Color[] colors, int threshold) { this.colors = colors; @@ -21,31 +21,15 @@ public class ResidueColourScheme implements ColourSchemeI { return colors[((Integer)(ResidueProperties.aaHash.get(aa))).intValue()]; } - public Color findColour(SequenceI seq,String s, int j, Vector aa) { - try { - return colors[((Integer)(ResidueProperties.aaHash.get(s))).intValue()]; - } catch (Exception e) { - return Color.white; - } - } - - // aa should maybe be a class - public Color getColour(SequenceI seq, int j,Vector aa) { - - Color c = Color.white; - String s = seq.getSequence(j,j+1); - - if (threshold > 0 && aa != null) - { - if (aboveThreshold(aa,seq,j,threshold)) - c = findColour(seq,s,j,aa); - } - else - c = findColour(seq,s,j,aa); + public Color findColour(String s, int j, Vector aa) { + if( threshold==0 || aboveThreshold(aa,s,j)) + return colors[((Integer)(ResidueProperties.aaHash.get(s))).intValue()]; + else + return Color.white; - return c; } + public int getThreshold() { return threshold; } @@ -54,51 +38,21 @@ public class ResidueColourScheme implements ColourSchemeI { threshold = ct; } - public Vector getColours(SequenceI s, Vector aa) { - Vector colours = new Vector(); - - for (int j = 0; j < s.getLength(); j++) - colours.addElement(getColour(s,j,aa)); - - return colours; - } - - public Vector getColours(SequenceGroup sg, Vector aa) { - Vector colours = new Vector(); - - for (int j = 0; j < sg.getSize(); j++) { - SequenceI s = sg.getSequenceAt(j); - - for (int i = 0; i < s.getLength();i++) { - colours.addElement(getColour(s,i,aa)); - } - } - return colours; - } + public boolean aboveThreshold(Vector aa,String s, int j) + { - public boolean aboveThreshold(Vector aa,SequenceI seq, int j, int threshold) { - String s = seq.getSequence(j,j+1); Hashtable hash = (Hashtable)aa.elementAt(j); - if (j < aa.size()) { - String maxRes = (String)hash.get("maxResidue"); - - double sc = 0; + if ( ( (Integer) hash.get("maxCount")).intValue() != -1 && hash.contains(s)) + { + //// resCount//////////////////// ///////////////seq count//////////// + double sc = ( (Integer) hash.get(s)).intValue() * 100.0 / ( (Integer) hash.get("size")).intValue(); - if (((Integer)hash.get("maxCount")).intValue() != -1 && hash.contains(s)) { - int maxCount = ((Integer)hash.get("maxCount")).intValue(); - int resCount = ((Integer)hash.get(s)).intValue(); + if (sc >= threshold) + return true; - sc = resCount * 100.0 / resCount; + } - // This should be isGap somewhere - if ( !s.equals("-") && !s.equals(".") && !s.equals(" ")) { - if (sc >= (double)threshold) { - return true; - } - } - } - } return false; }