From 6d2243ff184e3c1664de42c217bc6ee8b41c9ac5 Mon Sep 17 00:00:00 2001 From: Ben Soares Date: Thu, 24 Aug 2023 13:17:42 +0100 Subject: [PATCH] JAL-4250 Much simplified glyph creation removing most need for differences between vector/bitmap generation. Careful testing done to ensure no gaps in vector or high or low res bitmap. --- src/jalview/renderer/AnnotationRenderer.java | 43 ++++++-------------------- 1 file changed, 9 insertions(+), 34 deletions(-) diff --git a/src/jalview/renderer/AnnotationRenderer.java b/src/jalview/renderer/AnnotationRenderer.java index fd1caf9..2380ac9 100644 --- a/src/jalview/renderer/AnnotationRenderer.java +++ b/src/jalview/renderer/AnnotationRenderer.java @@ -304,7 +304,7 @@ public class AnnotationRenderer } // draw arrow body unsetAntialias(g); - fillRect(g, x1 - 1, y + 4 + iconOffset, x2 - x1 + 1, 6); + fillRect(g, x1, y + 4 + iconOffset, x2 - x1, 6); } // public void updateFromAnnotationPanel(FontMetrics annotFM, AlignViewportI @@ -1206,13 +1206,7 @@ public class AnnotationRenderer } unsetAntialias(g); g.setColor(GLYPHLINE_COLOR); - g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX - 1, - 2); - if (!isVectorRendition()) - { - g.drawRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX - 1, - 2); - } + g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX, 2); } void drawSheetAnnot(Graphics g, Annotation[] row, @@ -1228,7 +1222,7 @@ public class AnnotationRenderer g.setColor(SHEET_COLOUR); fillRect(g, lastSSX, y + 4 + iconOffset, - (x * charWidth) - lastSSX - 4, isVectorRendition() ? 6 : 7); + (x * charWidth) - lastSSX - 4, 6); fillPolygon(g, new int[] { (x * charWidth) - 6, (x * charWidth) - 6, @@ -1241,8 +1235,8 @@ public class AnnotationRenderer else { g.setColor(SHEET_COLOUR); - fillRect(g, lastSSX, y + 4 + iconOffset, x * charWidth - lastSSX, - isVectorRendition() ? 6 : 7); + fillRect(g, lastSSX, y + 4 + iconOffset, (x * charWidth) - lastSSX, + 6); } } @@ -1310,8 +1304,8 @@ public class AnnotationRenderer if (rightEnd) { - fillArc(g, (x * charWidth) - charWidth - 1, y + 3 + iconOffset, - charWidth, 8, 270, 180); + fillArc(g, ((x - 1) * charWidth), y + 3 + iconOffset, charWidth, 8, + 270, 180); x2 -= charWidth / 2; } @@ -1836,14 +1830,8 @@ public class AnnotationRenderer private void fillPolygon(Graphics g, int[] xpoints, int[] ypoints, int n) { - unsetAntialias(g); + setAntialias(g); g.fillPolygon(xpoints, ypoints, n); - if (!isVectorRendition()) - { - setAntialias(g); - g.fillPolygon(xpoints, ypoints, n); - g.drawPolygon(xpoints, ypoints, n); - } } /* @@ -1854,13 +1842,8 @@ public class AnnotationRenderer private void fillRect(Graphics g, int a, int b, int c, int d) { + unsetAntialias(g); g.fillRect(a, b, c, d); - /* - if (false && !isVectorRendition() && drawRect) - { - g.drawRect(a, b, c, d); - } - */ } private void fillRoundRect(Graphics g, int a, int b, int c, int d, int e, @@ -1868,20 +1851,12 @@ public class AnnotationRenderer { setAntialias(g); g.fillRoundRect(a, b, c, d, e, f); - if (!isVectorRendition()) - { - g.drawRoundRect(a, b, c, d, e, f); - } } private void fillArc(Graphics g, int a, int b, int c, int d, int e, int f) { setAntialias(g); g.fillArc(a, b, c, d, e, f); - if (!isVectorRendition()) - { - g.drawArc(a, b, c, d, e, f); - } } private void drawLine(Graphics g, Stroke s, int a, int b, int c, int d) -- 1.7.10.2