JAL-2593 avoid redundant rendering of co-located features
[jalview.git] / src / jalview / renderer / seqfeatures / FeatureRenderer.java
index 5e071f9..8f4f139 100644 (file)
@@ -21,6 +21,7 @@
 package jalview.renderer.seqfeatures;
 
 import jalview.api.AlignViewportI;
+import jalview.api.FeatureColourI;
 import jalview.datamodel.SequenceFeature;
 import jalview.datamodel.SequenceI;
 import jalview.util.Comparison;
@@ -290,8 +291,12 @@ public class FeatureRenderer extends FeatureRendererModel
         continue;
       }
 
+      FeatureColourI fc = getFeatureStyle(type);
       List<SequenceFeature> overlaps = seq.findFeatures(start + 1, end + 1,
               type);
+
+      filterFeaturesForDisplay(overlaps, fc);
+
       for (SequenceFeature sf : overlaps)
       {
         /*
@@ -303,7 +308,7 @@ public class FeatureRenderer extends FeatureRendererModel
           continue;
         }
 
-        Color featureColour = getColour(sf);
+        Color featureColour = fc.getColor(sf);
         boolean isContactFeature = sf.isContactFeature();
 
         int featureStartCol = seq.findIndex(sf.begin);