package fr.orsay.lri.varna.applications.fragseq; import java.awt.Color; import java.awt.datatransfer.DataFlavor; import java.util.Hashtable; import java.util.Random; import fr.orsay.lri.varna.models.annotations.ChemProbAnnotation; import fr.orsay.lri.varna.models.annotations.ChemProbAnnotation.ChemProbAnnotationType; import fr.orsay.lri.varna.models.rna.ModeleBase; import fr.orsay.lri.varna.models.rna.RNA; public class FragSeqAnnotationDataModel extends FragSeqModel { private String _id; private String _name; private Hashtable _values = new Hashtable(); public FragSeqAnnotationDataModel(String id, String name) { _id = id; _name = name; } public FragSeqAnnotationDataModel() { this(Long.toHexString(Double.doubleToLongBits(Math.random())),Long.toHexString(Double.doubleToLongBits(Math.random()))); } public void addValue(ChemProbModel cpm) { _values.put(cpm._baseNumber1,cpm); } static Random _rnd = new Random(); public static void addRandomAnnotations(RNA r,FragSeqAnnotationDataModel data){ int nb = r.getSize()/5+_rnd.nextInt(r.getSize()/3); Color[] colors = {Color.orange,Color.black,Color.blue.darker(),Color.green.darker(), Color.gray}; ChemProbAnnotationType[] types = ChemProbAnnotationType.values(); for(int i=0;i