diff --git a/uk/ac/sanger/artemis/circular/Block.java b/uk/ac/sanger/artemis/circular/Block.java index 355e96695ea0e3d583ae1630eb9c7b60f0372d15..3473de50119196087ff22ee698096d6b2c4f8447 100644 --- a/uk/ac/sanger/artemis/circular/Block.java +++ b/uk/ac/sanger/artemis/circular/Block.java @@ -373,7 +373,27 @@ public class Block implements Transferable int xstart = (int) ((bstart-(lineNumberStart*basesPerLine))*singleBaseWidth)+borderWidth2; int xend = (int) ((bend-(lineNumberEnd*basesPerLine))*singleBaseWidth)+borderWidth2; - BasicStroke basicstroke = new BasicStroke( + if(rect == null) + rect = new Vector(); + + BasicStroke basicstroke; + if(bstart == bend) + { + // SNP / variation feature + basicstroke = new BasicStroke( + 1.f, + BasicStroke.CAP_BUTT, + BasicStroke.JOIN_MITER); + g2.setStroke(basicstroke); + g2.drawLine(xstart,ypos,xstart,(int) (ypos+strokeSize)); + Rectangle r = new Rectangle(); + r.setLocation(xstart,ypos); + r.setSize(current_dna.getWidth()-borderWidth2-xstart,2); + rect.add(r); + return; + } + + basicstroke = new BasicStroke( strokeSize, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER); @@ -386,10 +406,7 @@ public class Block implements Transferable xstart+=strokeSize/2; g2.fillPolygon(xPoints,yPoints,3); } - - - if(rect == null) - rect = new Vector(); + Rectangle r;