From 22b4c26b5d96f5f7a90e3de0eb1057cc3877ca83 Mon Sep 17 00:00:00 2001 From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04> Date: Thu, 2 Dec 2004 16:52:55 +0000 Subject: [PATCH] fix colour legend git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@2093 ee4ac58c-ac51-4696-9907-e4b3aa274f04 --- uk/ac/sanger/artemis/plot/BaseAlgorithm.java | 51 +++---------- .../plot/Codon12CorrelationAlgorithm.java | 59 +-------------- .../sanger/artemis/plot/GCFrameAlgorithm.java | 74 ++++++++++++++++++- uk/ac/sanger/artemis/plot/MRIAlgorithm.java | 9 +-- 4 files changed, 86 insertions(+), 107 deletions(-) diff --git a/uk/ac/sanger/artemis/plot/BaseAlgorithm.java b/uk/ac/sanger/artemis/plot/BaseAlgorithm.java index e83516fa6..20cd71a29 100644 --- a/uk/ac/sanger/artemis/plot/BaseAlgorithm.java +++ b/uk/ac/sanger/artemis/plot/BaseAlgorithm.java @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/BaseAlgorithm.java,v 1.5 2004-11-30 11:27:50 tjc Exp $ + * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/BaseAlgorithm.java,v 1.6 2004-12-02 16:52:54 tjc Exp $ */ package uk.ac.sanger.artemis.plot; @@ -38,7 +38,7 @@ import java.awt.BasicStroke; * Strand of DNA, meaning the algorithm can't change strand part way along. * * @author Kim Rutherford - * @version $Id: BaseAlgorithm.java,v 1.5 2004-11-30 11:27:50 tjc Exp $ + * @version $Id: BaseAlgorithm.java,v 1.6 2004-12-02 16:52:54 tjc Exp $ **/ public abstract class BaseAlgorithm extends Algorithm @@ -138,9 +138,6 @@ public abstract class BaseAlgorithm extends Algorithm } else { - int frame = strand.getSequenceLength() % 3; - -// System.out.println("MOD "+frame); g2d.setColor(Color.black); g2d.drawString("4",0,font_height); g2d.drawString("5",font_width*5,font_height); @@ -148,43 +145,15 @@ public abstract class BaseAlgorithm extends Algorithm BasicStroke stroke = (BasicStroke)g2d.getStroke(); g2d.setStroke(new BasicStroke(3.f)); + g2d.setColor(frameColour[0]); + g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - switch(frame) - { - case 0: - g2d.setColor(frameColour[0]); - g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - - g2d.setColor(frameColour[2]); - g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); - - g2d.setColor(frameColour[1]); - g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); - g2d.setStroke(stroke); - return; - case 1: - g2d.setColor(frameColour[2]); - g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - - g2d.setColor(frameColour[1]); - g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); - - g2d.setColor(frameColour[0]); - g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); - g2d.setStroke(stroke); - return; - case 2: - g2d.setColor(frameColour[1]); - g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - - g2d.setColor(frameColour[0]); - g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); - - g2d.setColor(frameColour[2]); - g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); - g2d.setStroke(stroke); - return; - } + g2d.setColor(frameColour[2]); + g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); + + g2d.setColor(frameColour[1]); + g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); + g2d.setStroke(stroke); } } diff --git a/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java b/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java index 74b894a74..d0359ea34 100644 --- a/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java +++ b/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java,v 1.2 2004-11-30 10:52:38 tjc Exp $ + * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/Codon12CorrelationAlgorithm.java,v 1.3 2004-12-02 16:52:55 tjc Exp $ */ package uk.ac.sanger.artemis.plot; @@ -38,7 +38,7 @@ import java.awt.*; * the given strand. The Strand to use is set in the constructor. * * @author Kim Rutherford - * @version $Id: Codon12CorrelationAlgorithm.java,v 1.2 2004-11-30 10:52:38 tjc Exp $ + * @version $Id: Codon12CorrelationAlgorithm.java,v 1.3 2004-12-02 16:52:55 tjc Exp $ **/ public class Codon12CorrelationAlgorithm extends BaseAlgorithm { @@ -185,61 +185,6 @@ public class Codon12CorrelationAlgorithm extends BaseAlgorithm } } - /** - * - * Override as reverse strand is not sequence length dependent - * - */ - public void drawLegend(Graphics g, int font_height, - int font_width, Color[] frameColour) - { - Graphics2D g2d = (Graphics2D)g; - - FontMetrics fm = g2d.getFontMetrics(); - int lineHgt = 3 * font_height/4; - - Strand strand = getStrand(); - if(strand.isForwardStrand()) - { - g2d.setColor(Color.black); - g2d.drawString("1",0,font_height); - g2d.drawString("2",font_width*5,font_height); - g2d.drawString("3",font_width*10,font_height); - - BasicStroke stroke = (BasicStroke)g2d.getStroke(); - g2d.setStroke(new BasicStroke(3.f)); - g2d.setColor(frameColour[0]); - g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - - g2d.setColor(frameColour[1]); - g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); - - g2d.setColor(frameColour[2]); - g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); - g2d.setStroke(stroke); - } - else - { -// int frame = strand.getSequenceLength() % 3; -// System.out.println("MOD "+frame); - g2d.setColor(Color.black); - g2d.drawString("4",0,font_height); - g2d.drawString("5",font_width*5,font_height); - g2d.drawString("6",font_width*10,font_height); - - BasicStroke stroke = (BasicStroke)g2d.getStroke(); - g2d.setStroke(new BasicStroke(3.f)); - g2d.setColor(frameColour[0]); - g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); - - g2d.setColor(frameColour[2]); - g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); - - g2d.setColor(frameColour[1]); - g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); - g2d.setStroke(stroke); - } - } /** * Return the number of values a call to getValues () will return - three * in this case. diff --git a/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java b/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java index d03f66d0a..92b82bcb7 100644 --- a/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java +++ b/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java,v 1.2 2004-11-30 11:08:55 tjc Exp $ + * $Header: //tmp/pathsoft/artemis/uk/ac/sanger/artemis/plot/GCFrameAlgorithm.java,v 1.3 2004-12-02 16:52:55 tjc Exp $ */ package uk.ac.sanger.artemis.plot; @@ -29,6 +29,8 @@ import uk.ac.sanger.artemis.sequence.*; import uk.ac.sanger.artemis.util.*; import uk.ac.sanger.artemis.io.Range; +import java.awt.*; + /** * Objects of this class have one useful method - getValues (), which takes a * range of bases and returns three floating point numbers, which are the @@ -36,7 +38,7 @@ import uk.ac.sanger.artemis.io.Range; * constructor. * * @author Kim Rutherford - * @version $Id: GCFrameAlgorithm.java,v 1.2 2004-11-30 11:08:55 tjc Exp $ + * @version $Id: GCFrameAlgorithm.java,v 1.3 2004-12-02 16:52:55 tjc Exp $ **/ public class GCFrameAlgorithm extends BaseAlgorithm { @@ -137,6 +139,74 @@ public class GCFrameAlgorithm extends BaseAlgorithm values[frame] = 1.0F * gc_counts[frame]/sub_sequence_length * 3 * 100; } + /** + * + * Override drawLegend() + * + */ + public void drawLegend(Graphics g, int font_height, + int font_width, Color[] frameColour) + { + final Strand strand = getStrand(); + if(strand.isForwardStrand()) + super.drawLegend(g,font_height,font_width,frameColour); + else + { + Graphics2D g2d = (Graphics2D)g; + + FontMetrics fm = g2d.getFontMetrics(); + int lineHgt = 3 * font_height/4; + int frame = strand.getSequenceLength() % 3; + +// System.out.println("MOD "+frame); + g2d.setColor(Color.black); + g2d.drawString("4",0,font_height); + g2d.drawString("5",font_width*5,font_height); + g2d.drawString("6",font_width*10,font_height); + + BasicStroke stroke = (BasicStroke)g2d.getStroke(); + g2d.setStroke(new BasicStroke(3.f)); + + switch(frame) + { + case 0: + g2d.setColor(frameColour[0]); + g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); + + g2d.setColor(frameColour[1]); + g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); + + g2d.setColor(frameColour[2]); + g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); + g2d.setStroke(stroke); + return; + case 1: + g2d.setColor(frameColour[2]); + g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); + + g2d.setColor(frameColour[0]); + g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); + + g2d.setColor(frameColour[1]); + g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); + g2d.setStroke(stroke); + return; + case 2: + g2d.setColor(frameColour[1]); + g2d.drawLine(font_width*2, lineHgt, font_width*4, lineHgt); + + g2d.setColor(frameColour[2]); + g2d.drawLine(font_width*7, lineHgt, font_width*9, lineHgt); + + g2d.setColor(frameColour[0]); + g2d.drawLine(font_width*12, lineHgt, font_width*14, lineHgt); + g2d.setStroke(stroke); + return; + } + } + } + + /** * Return the number of values a call to getValues() will return - three * in this case. diff --git a/uk/ac/sanger/artemis/plot/MRIAlgorithm.java b/uk/ac/sanger/artemis/plot/MRIAlgorithm.java index 619498766..3dce8278e 100644 --- a/uk/ac/sanger/artemis/plot/MRIAlgorithm.java +++ b/uk/ac/sanger/artemis/plot/MRIAlgorithm.java @@ -34,7 +34,7 @@ import uk.ac.sanger.artemis.sequence.*; * Biol Int 43:107-14 * * @author Derek Gatherer - * @version $Id: MRIAlgorithm.java,v 1.2 2004-12-01 16:33:27 tjc Exp $ + * @version $Id: MRIAlgorithm.java,v 1.3 2004-12-02 16:52:55 tjc Exp $ * original version 10-09-03 * revised 01-12-04 **/ @@ -61,11 +61,7 @@ public class MRIAlgorithm extends BaseAlgorithm **/ public void getValues(int start, int end, final float [] values) { - if(getStrand().isForwardStrand()) // rather than isRevCompDisplay() - { -// System.out.println("isRevCompDisplay does not activate here"); - } - else + if(!getStrand().isForwardStrand() || isRevCompDisplay()) { final int new_end = getStrand().getBases().getComplementPosition(start); @@ -74,7 +70,6 @@ public class MRIAlgorithm extends BaseAlgorithm end = new_end; start = new_start; -// System.out.println("Revcomp, so new start:"+start+"new end:"+end); } final String sub_sequence; -- GitLab