-import jalview.util.*;\r
-import jalview.jbgui.*;\r
-import jalview.schemes.*;\r
-import java.awt.*;\r
-\r
-public class SequenceFeature {\r
- int start;\r
- int end;\r
- String type;\r
- String description;\r
- Color color;\r
- Sequence sequence;\r
- String id;\r
- double score;\r
- int strand;\r
- double pvalue;\r
- double pid;\r
-\r
- public SequenceFeature() {\r
- }\r
-\r
- public SequenceFeature(Sequence sequence,String type, int start, int end, String description) {\r
- this.sequence = sequence;\r
- this.type = type;\r
- this.start = start;\r
- this.end = end;\r
- this.description = description;\r
-\r
- setColor();\r
- }\r
-\r
-\r
- public String toGFFString() {\r
- String gff = id + "\t" + type + "\tfeature\t" + start + "\t" + end + "\t" + score + "\t" + strand + "\t.";\r
- return gff;\r
- }\r
- public double getScore() {\r
- return score;\r
- }\r
-\r
- public void setScore(double score) {\r
- this.score = score;\r
- }\r
-\r
- public String getId() {\r
- return this.id;\r
- }\r
- public void setId(String id) {\r
- this.id = id;\r
- }\r
- public void setSequence(Sequence seq) {\r
- this.sequence = seq;\r
- }\r
- public void setStart(int start) {\r
- this.start = start;\r
- }\r
- public void setEnd(int end) {\r
- this.end = end;\r
- }\r
- public int getStrand() {\r
- return strand;\r
- }\r
- public void setStrand(int strand) {\r
- this.strand = strand;\r
- }\r
- public int getStart() {\r
- return start;\r
- }\r
-\r
- public int getEnd() {\r
- return end;\r
- }\r
-\r
- public String getType() {\r
- return type;\r
- }\r
-\r
- public String getDescription() {\r
- return description;\r
- }\r
-\r
- public double getPValue() {\r
- return pvalue;\r
- }\r
- public void setPValue(double value) {\r
- this.pvalue = value;\r
- }\r
- public double getPercentId() {\r
- return pid;\r
- }\r
- public void setPercentId(double pid) {\r
- this.pid = pid;\r
- }\r
- public Color getColor() {\r
- return color;\r
- }\r
-\r
- public void setColor() {\r
- if (type.equals("CHAIN")) {\r
- color = Color.white;\r
- } else if (type.equals("DOMAIN")) {\r
- color = Color.white;\r
- } else if (type.equals("TRANSMEM")) {\r
- color = Color.red.darker();\r
- } else if (type.equals("SIGNAL")) {\r
- color = Color.cyan;\r
- } else if (type.equals("HELIX")) {\r
- color = Color.magenta;\r
- } else if (type.equals("TURN")) {\r
- color = Color.cyan;\r
- } else if (type.equals("SHEET")) {\r
- color = Color.yellow;\r
- } else if (type.equals("STRAND")) {\r
- color = Color.yellow;\r
- } else if (type.equals("CARBOHYD")) {\r
- color = Color.pink;\r
- } else if (type.equals("ACT_SITE")) {\r
- color = Color.red;\r
- } else if (type.equals("TRANSIT")) {\r
- color = Color.orange;\r
- } else if (type.equals("VARIANT")) {\r
- color = Color.orange.darker();\r
- } else if (type.equals("BINDING")) {\r
- color = Color.blue;\r
- } else if (type.equals("DISULFID")) {\r
- color = Color.yellow.darker();\r
- } else if (type.equals("NP_BIND")) {\r
- color = Color.red;\r
- } else if (type.indexOf("BIND") > 0) {\r
- color = Color.red;\r
- } else {\r
- color = Color.lightGray;\r