0aaf0409a13314e72fe59bf9391a25960e8ef538
[jalview.git] / src / MCview / Atom.java
1 /*\r
2 * Jalview - A Sequence Alignment Editor and Viewer\r
3 * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4 *\r
5 * This program is free software; you can redistribute it and/or\r
6 * modify it under the terms of the GNU General Public License\r
7 * as published by the Free Software Foundation; either version 2\r
8 * of the License, or (at your option) any later version.\r
9 *\r
10 * This program is distributed in the hope that it will be useful,\r
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13 * GNU General Public License for more details.\r
14 *\r
15 * You should have received a copy of the GNU General Public License\r
16 * along with this program; if not, write to the Free Software\r
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18 */\r
19 package MCview;\r
20 \r
21 import java.awt.*;\r
22 \r
23 import java.util.*;\r
24 \r
25 \r
26 public class Atom {\r
27     double x;\r
28     double y;\r
29     double z;\r
30     int number;\r
31     String name;\r
32     String resName;\r
33     int resNumber;\r
34     int type;\r
35     Color color;\r
36     String chain;\r
37 \r
38     public Atom(StringTokenizer str) {\r
39         this.number = (new Integer(str.nextToken())).intValue();\r
40         this.name = str.nextToken();\r
41         this.resName = str.nextToken();\r
42 \r
43         String tmpstr = new String();\r
44 \r
45         try {\r
46             tmpstr = str.nextToken();\r
47 \r
48             this.resNumber = (new Integer(tmpstr).intValue());\r
49             this.chain = "A";\r
50             this.color = Color.green;\r
51         } catch (NumberFormatException e) {\r
52             this.chain = tmpstr;\r
53 \r
54             if (tmpstr.equals("A")) {\r
55                 this.color = new Color((float) Math.random(),\r
56                         (float) Math.random(), (float) Math.random());\r
57             } else {\r
58                 this.color = Color.red;\r
59             }\r
60 \r
61             this.resNumber = (new Integer(str.nextToken()).intValue());\r
62         }\r
63 \r
64         this.x = (double) (new Double(str.nextToken()).floatValue());\r
65         this.y = (double) (new Double(str.nextToken()).floatValue());\r
66         this.z = (double) (new Double(str.nextToken()).floatValue());\r
67     }\r
68 \r
69     public void setColor(Color col) {\r
70         this.color = col;\r
71     }\r
72 }\r