1 package jalview.datamodel;
4 import java.util.BitSet;
5 import java.util.HashMap;
8 import jalview.util.MapList;
9 import jalview.ws.datamodel.alphafold.MappableContactMatrix;
12 * Dummy contact matrix based on sequence distance
17 public class SeqDistanceContactMatrix extends MappableContactMatrix<SeqDistanceContactMatrix> implements ContactMatrixI
19 private static final String SEQUENCE_DISTANCE = "SEQUENCE_DISTANCE";
20 private int width = 0;
22 public SeqDistanceContactMatrix(int width)
40 public ContactListI getContactList(final int column)
42 if (column < 0 || column >= width)
46 return new ContactListImpl(new ContactListProviderI()
52 // public Color getColorForScore(int column)
54 // return jalview.util.ColorUtils.getGraduatedColour(Math.abs(column-p),
55 // 0, Color.white, width, Color.magenta);
58 // public Color getColorForRange(int from_column, int to_column)
60 // return jalview.util.ColorUtils.getGraduatedColour(
61 // Math.abs(to_column + from_column - 2 * p) / 2, 0, Color.white, width,
66 public int getContactHeight()
73 public int getPosition()
79 public double getContactAt(int column)
81 return Math.abs(column - p);
86 public String getAnnotDescr()
88 return "Sequence distance matrix";
92 public String getAnnotLabel()
94 return "Sequence Distance";
98 public String getType()
100 return SEQUENCE_DISTANCE;
104 public int getWidth()
110 public int getHeight()
114 private List<BitSet> groups=null;
116 public void updateGroups(List<BitSet> colGroups)
121 public boolean hasGroups()
126 public List<BitSet> getGroups()
131 HashMap<BitSet,Color> colorMap = new HashMap<>();
133 public Color getColourForGroup(BitSet bs)
138 Color groupCol=colorMap.get(bs);
146 public void setColorForGroup(BitSet bs,Color color)
148 colorMap.put(bs,color);
151 protected double getElementAt(int _column, int i)
153 return Math.abs(_column-i);
157 protected SeqDistanceContactMatrix newMappableContactMatrix(
158 SequenceI newRefSeq, MapList newFromMapList)
161 return new SeqDistanceContactMatrix(width);