Closed josiahseaman closed 5 years ago
Solution: Genes don't shadow themselves because their points are included in the shadow calculation. Put all of the annotation points into a single set. Compute all shadows in one big computation then paint them all at the same time. This will keep shadows outside of annotations and so they won't have a change to side effect the exon highlights either.
One gene containing a second gene in better handled separately. That means there's a conflict in design between making nearby genes look nice without losing genes that are entirely within introns.
Names of small genes are getting truncated. Allow txt.width
to be larger than right - left
.
This issue is mostly ameliorated by c0ca609bf2bf17ffbbfb35657e42d9ea1cedfbcd by using multiple instances of markup canvas and applying them one at a time.
OutlinedAnnotation.blend_pixel() tries to keep any opacity the way that it is. The combination of exon white highlighting plus shadow has some strange effects when they overlap. To prevent this, redraw the nucleotide pixels again to copy over anything below them. We could also allocate a second image layer the size of the whole image, but that would create a memory management issue.