diff flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java @ 2407:dce0cc856357

'Bezugslinien': Added axis labels matching the displayed data. flys-artifacts/trunk@4036 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 10 Feb 2012 16:00:57 +0000
parents 1fcaeced48f2
children 8e2ae8813a06
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java	Fri Feb 10 14:04:07 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java	Fri Feb 10 16:00:57 2012 +0000
@@ -2,8 +2,6 @@
 
 import org.w3c.dom.Document;
 
-import java.awt.Font;
-
 import org.apache.log4j.Logger;
 
 import org.jfree.chart.JFreeChart;
@@ -30,8 +28,7 @@
 implements   FacetTypes
 {
     public static enum YAXIS {
-        W_M(0),
-        W_CM(1);
+        W(0);
 
         public int idx;
         private YAXIS(int c) {
@@ -49,62 +46,33 @@
     public static final String I18N_CHART_SUBTITLE =
         "chart.reference.curve.subtitle";
 
-    public static final String W_CM_DEFAULT =
-        "chart.reference.curve.wcm";
-
-    public static final String W_NNM_DEFAULT =
-        "chart.reference.curve.wnn";
-
-    public static final String START_GAUGE =
-        "chart.reference.curve.start_at_gauge";
-
-    public static final String START_FREE =
-        "chart.reference.curve.start_free";
-
-    /*
+    public static final String I18N_X_AXIS_IN_CM =
+        "chart.reference.curve.x.axis.in.cm";
 
-    public static final String I18N_XAXIS_LABEL =
-        "chart.reference.curve.xaxis.label";
+    public static final String I18N_X_AXIS_IN_M =
+        "chart.reference.curve.x.axis.in.m";
 
-    public static final String I18N_YAXIS_LABEL =
-        "chart.reference.curve.yaxis.label";
-*/
-/*
-    public static final String I18N_XAXIS_LABEL_DEFAULT  =
-        "W [NN + m]";
+    public static final String I18N_Y_AXIS_IN_CM =
+        "chart.reference.curve.y.axis.in.cm";
 
-    public static final String I18N_YAXIS_LABEL_DEFAULT  =
-        "W [NN + m]";
-    */
-
+    public static final String I18N_Y_AXIS_IN_M =
+        "chart.reference.curve.y.axis.in.m";
 
     public static final String I18N_CHART_TITLE_DEFAULT  =
         "Bezugslinie";
 
 
     public ReferenceCurveGenerator() {
-        super();
     }
 
-
     /**
      * Create Axis for given index.
      * @return axis with according internationalized label.
      */
     @Override
     protected NumberAxis createYAxis(int index) {
-        Font labelFont = new Font("Tahoma", Font.BOLD, 14);
-        String label   = getYAxisLabel(index);
-
-        NumberAxis axis = createNumberAxis(index, label);
-        // TODO aspect-ratio settings.
-        /*
-        if (index == YAXIS.W_M.idx) {
-            axis.setAutoRangeIncludesZero(false);
-        }
-        */
+        NumberAxis axis = super.createYAxis(index);
         axis.setAutoRangeIncludesZero(false);
-        axis.setLabelFont(labelFont);
         return axis;
     }
 
@@ -134,13 +102,16 @@
         }
     }
 
+    protected boolean getInCm(int index) {
+        Object obj = context.getContextValue("reference.curve.axis.scale");
+        return obj instanceof WWAxisTypes && ((WWAxisTypes)obj).getInCm(index);
+    }
+
 
     /** Get Label for X-axis (W). */
     @Override
     protected String getDefaultXAxisLabel() {
-        // TODO i18nreturn msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL_DEFAULT);
-        // at_gauge + w_cm
-        return "W am Bezugsort- oder Pegel.";
+        return msg(getInCm(0) ? I18N_X_AXIS_IN_CM : I18N_X_AXIS_IN_M);
     }
 
 
@@ -150,17 +121,7 @@
      */
     @Override
     protected String getDefaultYAxisLabel(int index) {
-        String label = "default";
-        if (index == YAXIS.W_M.idx) {
-            //label = msg(I18N_YAXIS_LABEL, I18N_YAXIS_LABEL_DEFAULT);
-            //TODO i18n 
-            return "W am Zielort";
-        }
-        else if (index == YAXIS.W_CM.idx) {
-            return "W am Zielpegel";
-        }
-
-        return label;
+        return msg(getInCm(1) ? I18N_Y_AXIS_IN_CM : I18N_Y_AXIS_IN_M);
     }
 
 
@@ -194,11 +155,10 @@
                 artifactFacet,
                 theme,
                 visible,
-                YAXIS.W_M.idx);
+                YAXIS.W.idx);
         }
         else {
             logger.warn("Unknown facet name: " + name);
-            return;
         }
     }
 
@@ -229,12 +189,7 @@
             series.add(values[0], values[1], false);
         }
 
-        if (ww.endAtGauge()) {
-            addAxisSeries(series, YAXIS.W_M.idx, visible);
-        }
-        else {
-            addAxisSeries(series, YAXIS.W_CM.idx, visible);
-        }
+        addAxisSeries(series, YAXIS.W.idx, visible);
     }
 
 

http://dive4elements.wald.intevation.org