package jalview.schemes; public class ColourSchemeProperty { public static final int CLUSTAL = 0; public static final int BLOSUM = 1; public static final int PID = 2; public static final int ZAPPO = 3; public static final int HYDROPHOBIC=4; public static final int HELIX=5; public static final int STRAND=6; public static final int TURN = 7; public static final int BURIED = 8; public static final int NUCLEOTIDE = 9; public static final int USER_DEFINED = 10; public static final int NONE = 11; public static int getColourIndexFromName(String name) { int ret=11; if(name.equalsIgnoreCase("Clustal")) ret = CLUSTAL; else if(name.equalsIgnoreCase("Blosum62")) ret = BLOSUM; else if(name.equalsIgnoreCase("% Identity")) ret = PID; else if(name.equalsIgnoreCase("Zappo")) ret = ZAPPO; else if(name.equalsIgnoreCase("Hydrophobic")) ret = HYDROPHOBIC; else if(name.equalsIgnoreCase("Helix Propensity")) ret = HELIX; else if(name.equalsIgnoreCase("Strand Propensity")) ret = STRAND; else if(name.equalsIgnoreCase("Turn Propensity")) ret = TURN; else if(name.equalsIgnoreCase("Buried Index")) ret = BURIED; else if(name.equalsIgnoreCase("Nucleotide")) ret = NUCLEOTIDE; else if(name.equalsIgnoreCase("User Defined")) ret = USER_DEFINED; return ret; } public static String getColourName(ColourSchemeI cs) { if(cs instanceof ConservationColourScheme) cs = ((ConservationColourScheme)cs).cs; int index = 11; if(cs instanceof ClustalxColourScheme) index = CLUSTAL; else if(cs instanceof Blosum62ColourScheme) index = BLOSUM; else if(cs instanceof PIDColourScheme) index = PID; else if(cs instanceof ZappoColourScheme) index = ZAPPO; else if(cs instanceof HydrophobicColourScheme) index = HYDROPHOBIC; else if(cs instanceof HelixColourScheme) index = HELIX; else if(cs instanceof StrandColourScheme) index = STRAND; else if(cs instanceof TurnColourScheme) index = TURN; else if(cs instanceof BuriedColourScheme) index = BURIED; else if(cs instanceof NucleotideColourScheme) index = NUCLEOTIDE; else if(cs instanceof UserColourScheme) index = USER_DEFINED; return getColourName(index); } public static String getColourName(int index) { String ret=null; switch(index) { case CLUSTAL: ret = "Clustal"; break; case BLOSUM: ret = "Blosum62"; break; case PID: ret = "% Identity"; break; case ZAPPO: ret = "Zappo"; break; case HYDROPHOBIC: ret="Hydrophobic";break; case HELIX: ret="Helix Propensity";break; case STRAND: ret="Strand Propensity";break; case TURN: ret="Turn Propensity";break; case BURIED: ret="Buried Index";break; case NUCLEOTIDE:ret="Nucleotide"; break; case USER_DEFINED:ret="User Defined";break; default: ret = "None"; break; } return ret; } public static ColourSchemeI getColour(jalview.datamodel.AlignmentI al, String name) { return getColour(al, getColourIndexFromName(name)); } public static ColourSchemeI getColour(jalview.datamodel.AlignmentI al, int index) { ColourSchemeI cs = null; switch(index) { case CLUSTAL: cs = new ClustalxColourScheme(al.getSequences(), al.getWidth()); break; case BLOSUM: cs = new Blosum62ColourScheme(); break; case PID: cs = new PIDColourScheme(); break; case ZAPPO: cs = new ZappoColourScheme(); break; case HYDROPHOBIC: cs = new HydrophobicColourScheme(); break; case HELIX: cs = new HelixColourScheme(); break; case STRAND: cs = new StrandColourScheme(); break; case TURN: cs = new TurnColourScheme(); break; case BURIED: cs = new BuriedColourScheme(); break; case NUCLEOTIDE: cs = new NucleotideColourScheme(); break; case USER_DEFINED: cs = new UserColourScheme(null); break; default: break; } return cs; } }