1 import jalview.datamodel.SequenceFeature
2 import jalview.gui.Desktop
3 def af = jalview.bin.Jalview.currentAlignFrame
5 def fr = Desktop.getAlignFrameFor(av.codingComplement).getFeatureRenderer()
8 for (seq in av.alignment.sequences)
10 ds = seq.datasetSequence
11 for (res = ds.start ; res <= ds.end; res++)
13 mf = fr.findComplementFeaturesAtResidue(seq, res)
16 for (feature in mf.features)
18 variant = mf.findProteinVariants(feature)
19 if (!"".equals(variant))
21 type = variant.contains("=") ? "synonymous_variant" : "missense_variant"
22 if (type.equals("synonymous_variant")) counts++ else countm++;
23 sf = new SequenceFeature(type, variant, res, res, null)
24 seq.addSequenceFeature(sf)
30 af.getFeatureRenderer().featuresAdded()
31 af.alignPanel.paintAlignment(true, true)
32 println "Added " + countm + " missense and " + counts + " synonymous variants"