UnityMol  0.9.6-875
UnityMol viewer / In developement
HydrophobicScales.cs
Go to the documentation of this file.
1 
2 using System;
3 using UnityEngine;
4 using System.Collections;
5 using System.Collections.Generic;
6 
7 public class HydrophobicScales{
8 
9  private static Dictionary<string, Color32> hydro_scale = null;
10 
11  // Color surface using Kyte & Doolittle hydrophobic scale
12  public static void InitKyteDoo() {
13 
14  hydro_scale = new Dictionary <string, Color32> ();
15 
16  hydro_scale.Add ("ILE", new Color32 (255, 0, 0, 255));
17  hydro_scale.Add ("VAL", new Color32 (255, 17, 17, 255));
18  hydro_scale.Add ("LEU", new Color32 (255, 40, 40, 255));
19 
20  hydro_scale.Add ("PHE", new Color32 (255, 96, 96, 255));
21  hydro_scale.Add ("CYS", new Color32 (255, 113, 113, 255));
22  hydro_scale.Add ("MET", new Color32 (255, 147, 147, 255));
23  hydro_scale.Add ("ALA", new Color32 (255, 153, 153, 255));
24 
25  hydro_scale.Add ("GLY", new Color32 ( 232, 232, 255, 255));
26  hydro_scale.Add ("THR", new Color32 ( 215, 215, 255, 255));
27  hydro_scale.Add ("SER", new Color32 ( 210, 210, 255, 255));
28  hydro_scale.Add ("TRP", new Color32 ( 204, 204, 255, 255));
29  hydro_scale.Add ("TYR", new Color32 ( 181, 181, 255, 255));
30  hydro_scale.Add ("PRO", new Color32 ( 164, 164, 255, 255));
31 
32  hydro_scale.Add ("HIS", new Color32 ( 74, 74, 255, 255));
33  hydro_scale.Add ("ASN", new Color32 ( 57, 57, 255, 255));
34  hydro_scale.Add ("GLN", new Color32 ( 57, 57, 255, 255));
35  hydro_scale.Add ("ASP", new Color32 ( 57, 57, 255, 255));
36  hydro_scale.Add ("GLU", new Color32 ( 57, 57, 255, 255));
37  hydro_scale.Add ("LYS", new Color32 ( 34, 34, 255, 255));
38 
39  hydro_scale.Add ("ARG", new Color32 ( 0, 0, 255, 255));
40  }
41 
42  public static void InitEngleman() {
43 
44  hydro_scale = new Dictionary <string, Color32> ();
45 
46  hydro_scale.Add ("PHE", new Color32 ( 255, 0, 0, 255));
47  hydro_scale.Add ("MET", new Color32 ( 255, 21, 21, 255));
48  hydro_scale.Add ("ILE", new Color32 ( 255, 41, 41, 255));
49  hydro_scale.Add ("LEU", new Color32 ( 255, 62, 62, 255));
50  hydro_scale.Add ("VAL", new Color32 ( 255, 76, 76, 255));
51  hydro_scale.Add ("CYS", new Color32 ( 255, 117, 117, 255));
52  hydro_scale.Add ("TRP", new Color32 ( 255, 124, 124, 255));
53  hydro_scale.Add ("ALA", new Color32 ( 255, 145, 145, 255));
54  hydro_scale.Add ("THR", new Color32 ( 255, 172, 172, 255));
55  hydro_scale.Add ("GLY", new Color32 ( 255, 186, 186, 255));
56  hydro_scale.Add ("SER", new Color32 ( 255, 214, 214, 255));
57 
58  hydro_scale.Add ("PRO", new Color32 ( 251, 251, 255, 255));
59  hydro_scale.Add ("TYR", new Color32 ( 240, 240, 255, 255));
60  hydro_scale.Add ("HIS", new Color32 ( 193, 193, 255, 255));
61  hydro_scale.Add ("GLN", new Color32 ( 170, 170, 255, 255));
62  hydro_scale.Add ("ASN", new Color32 ( 155, 155, 255, 255));
63  hydro_scale.Add ("GLU", new Color32 ( 85, 85, 255, 255));
64  hydro_scale.Add ("LYS", new Color32 ( 73, 73, 255, 255));
65  hydro_scale.Add ("ASP", new Color32 ( 64, 64, 255, 255));
66  hydro_scale.Add ("ARG", new Color32 ( 0, 0, 255, 255));
67  }
68 
69  public static void InitEisenberg() {
70 
71  hydro_scale = new Dictionary <string, Color32> ();
72 
73  hydro_scale.Add ("ILE", new Color32 ( 255, 0, 0, 255));
74  hydro_scale.Add ("PHE", new Color32 ( 255, 35, 35, 255));
75  hydro_scale.Add ("VAL", new Color32 ( 255, 56, 56, 255));
76  hydro_scale.Add ("LEU", new Color32 ( 255, 59, 59, 255));
77  hydro_scale.Add ("TRP", new Color32 ( 255, 105, 105, 255));
78  hydro_scale.Add ("MET", new Color32 ( 255, 137, 137, 255));
79  hydro_scale.Add ("ALA", new Color32 ( 255, 140, 140, 255));
80  hydro_scale.Add ("GLY", new Color32 ( 255, 166, 166, 255));
81  hydro_scale.Add ("CYS", new Color32 ( 255, 201, 201, 255));
82  hydro_scale.Add ("TYR", new Color32 ( 255, 207, 207, 255));
83  hydro_scale.Add ("PRO", new Color32 ( 255, 233, 233, 255));
84 
85  hydro_scale.Add ("THR", new Color32 ( 252, 252, 255, 255));
86  hydro_scale.Add ("SER", new Color32 ( 237, 237, 255, 255));
87  hydro_scale.Add ("HIS", new Color32 ( 215, 215, 255, 255));
88  hydro_scale.Add ("GLU", new Color32 ( 180, 180, 255, 255));
89  hydro_scale.Add ("ASN", new Color32 ( 176, 176, 255, 255));
90  hydro_scale.Add ("GLN", new Color32 ( 169, 169, 255, 255));
91  hydro_scale.Add ("ASP", new Color32 ( 164, 164, 255, 255));
92  hydro_scale.Add ("ARG", new Color32 ( 104, 104, 255, 255));
93  hydro_scale.Add ("LYS", new Color32 ( 0, 0, 255, 255));
94 
95  }
96 
97  public static void InitWhiteOct() {
98 
99  hydro_scale = new Dictionary <string, Color32> ();
100 
101  hydro_scale.Add ("TRP", new Color32 ( 255, 0, 0, 255));
102  hydro_scale.Add ("PHE", new Color32 ( 255, 47, 47, 255));
103  hydro_scale.Add ("LEU", new Color32 ( 255, 102, 102, 255));
104  hydro_scale.Add ("ILE", new Color32 ( 255, 118, 118, 255));
105  hydro_scale.Add ("TYR", new Color32 ( 255, 168, 168, 255));
106  hydro_scale.Add ("MET", new Color32 ( 255, 173, 173, 255));
107  hydro_scale.Add ("VAL", new Color32 ( 255, 199, 199, 255));
108  hydro_scale.Add ("CYS", new Color32 ( 255, 253, 253, 255));
109 
110  hydro_scale.Add ("PRO", new Color32 ( 245, 245, 255, 255));
111  hydro_scale.Add ("THR", new Color32 ( 238, 238, 255, 255));
112  hydro_scale.Add ("SER", new Color32 ( 223, 223, 255, 255));
113  hydro_scale.Add ("ALA", new Color32 ( 220, 220, 255, 255));
114  hydro_scale.Add ("GLN", new Color32 ( 201, 201, 255, 255));
115  hydro_scale.Add ("ASN", new Color32 ( 195, 195, 255, 255));
116  hydro_scale.Add ("GLY", new Color32 ( 174, 174, 255, 255));
117  hydro_scale.Add ("ARG", new Color32 ( 128, 128, 255, 255));
118  hydro_scale.Add ("HIS", new Color32 ( 92, 92, 255, 255));
119  hydro_scale.Add ("LYS", new Color32 ( 59, 59, 255, 255));
120  hydro_scale.Add ("GLU", new Color32 ( 1, 1, 255, 255));
121  hydro_scale.Add ("ASP", new Color32 ( 0, 0, 255, 255));
122 
123  }
124 
125  public static void InitPhysChim() {
126 
127  hydro_scale = new Dictionary <string, Color32> ();
128 
129  //Apolar (white)
130  hydro_scale.Add ("ILE", new Color32 (255, 255, 255, 255));
131  hydro_scale.Add ("VAL", new Color32 (255, 255, 255, 255));
132  hydro_scale.Add ("LEU", new Color32 (255, 255, 255, 255));
133  hydro_scale.Add ("PHE", new Color32 (255, 255, 255, 255));
134  hydro_scale.Add ("MET", new Color32 (255, 255, 255, 255));
135  hydro_scale.Add ("ALA", new Color32 (255, 255, 255, 255));
136  hydro_scale.Add ("GLY", new Color32 (255, 255, 255, 255));
137  hydro_scale.Add ("TRP", new Color32 (255, 255, 255, 255));
138  hydro_scale.Add ("PRO", new Color32 (255, 255, 255, 255));
139 
140  //Polar (Green)
141  hydro_scale.Add ("THR", new Color32 (0, 255, 0, 255));
142  hydro_scale.Add ("SER", new Color32 (0, 255, 0, 255));
143  hydro_scale.Add ("TYR", new Color32 (0, 255, 0, 255));
144  hydro_scale.Add ("ASN", new Color32 (0, 255, 0, 255));
145  hydro_scale.Add ("GLN", new Color32 (0, 255, 0, 255));
146  hydro_scale.Add ("CYS", new Color32 (0, 255, 0, 255));
147 
148  //Acid (red)
149  hydro_scale.Add ("ASP", new Color32 (255, 0, 0, 255));
150  hydro_scale.Add ("GLU", new Color32 (255, 0, 0, 255));
151 
152  //Base (blue)
153  hydro_scale.Add ("LYS", new Color32 (0, 0, 255, 255));
154  hydro_scale.Add ("ARG", new Color32 (0, 0, 255, 255));
155  hydro_scale.Add ("HIS", new Color32 (0, 0, 255, 255));
156 
157  }
158 
159  public static void InitShapelyColors() {
160 
161  hydro_scale = new Dictionary <string, Color32> ();
162 
163  hydro_scale.Add ("ASP", new Color32 (230, 10, 10, 255));
164  hydro_scale.Add ("GLU", new Color32 (230, 10, 10, 255));
165 
166  hydro_scale.Add ("CYS", new Color32 (230, 230, 0, 255));
167  hydro_scale.Add ("MET", new Color32 (230, 230, 0, 255));
168 
169  hydro_scale.Add ("LYS", new Color32 ( 20, 90, 255, 255));
170  hydro_scale.Add ("ARG", new Color32 ( 20, 90, 255, 255));
171 
172  hydro_scale.Add ("SER", new Color32 (250, 150, 0, 255));
173  hydro_scale.Add ("THR", new Color32 (250, 150, 0, 255));
174 
175  hydro_scale.Add ("PHE", new Color32 ( 50, 50, 170, 255));
176  hydro_scale.Add ("TYR", new Color32 ( 50, 50, 170, 255));
177 
178  hydro_scale.Add ("ASN", new Color32 ( 0, 220, 220, 255));
179  hydro_scale.Add ("GLN", new Color32 ( 0, 220, 220, 255));
180 
181  hydro_scale.Add ("GLY", new Color32 (235, 235, 235, 255));
182 
183  hydro_scale.Add ("LEU", new Color32 ( 15, 130, 15, 255));
184  hydro_scale.Add ("VAL", new Color32 ( 15, 130, 15, 255));
185  hydro_scale.Add ("ILE", new Color32 ( 15, 130, 15, 255));
186 
187  hydro_scale.Add ("ALA", new Color32 (200, 200, 200, 255));
188  hydro_scale.Add ("TRP", new Color32 (180, 90, 180, 255));
189  hydro_scale.Add ("HIS", new Color32 (130, 130, 210, 255));
190  hydro_scale.Add ("PRO", new Color32 (220, 150, 130, 255));
191  }
192 
193 
194  public static Color32 GetColorHydro(string type) {
195  Color32 value = new Color32(255, 255, 255, 255);
196  if(hydro_scale == null)
197  return new Color32(255, 255, 255, 255);
198  else if(!hydro_scale.TryGetValue(type, out value))
199  return new Color32(255, 255, 255, 255);
200  else
201  return hydro_scale[type];
202  }
203 
204 }
205 
206 
static void InitShapelyColors()
static void InitEisenberg()
static void InitWhiteOct()
static void InitKyteDoo()
static void InitEngleman()
static Dictionary< string, Color32 > hydro_scale
static void InitPhysChim()
static Color32 GetColorHydro(string type)