Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedDiffBaseGenerator.java @ 7047:b5e9b8b5c8d6
issue1493: Use other numberformat for csv data from diagram.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Thu, 19 Sep 2013 09:16:52 +0200 |
parents | 87b49f9f27a1 |
children | dd5355775ce1 |
line wrap: on
line source
/* Copyright (C) 2013 by Bundesanstalt für Gewässerkunde * Software engineering by Intevation GmbH * * This file is Free Software under the GNU AGPL (>=v3) * and comes with ABSOLUTELY NO WARRANTY! Check out the * documentation coming with Dive4Elements River for details. */ package org.dive4elements.river.exports.minfo; import org.apache.log4j.Logger; import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; import org.dive4elements.river.artifacts.model.minfo.BedDifferencesResult; import org.dive4elements.river.jfree.Bounds; import org.dive4elements.river.jfree.DoubleBounds; import org.dive4elements.river.exports.fixings.FixChartGenerator; /** Base for BedDiff*Year*Generators, to avoid duplicate code of setContextBounds. */ public abstract class BedDiffBaseGenerator extends FixChartGenerator { /** The logger that is used in this generator. */ private static Logger logger = Logger.getLogger(BedDiffBaseGenerator.class); /** Set context values for something. */ public void setContextBounds(ArtifactAndFacet bundle) { Bounds xBounds = getXBounds(0); if (xBounds != null && getDomainAxisRange() != null) { Bounds bounds = calculateZoom(xBounds, getDomainAxisRange()); context.putContextValue("startkm", bounds.getLower()); context.putContextValue("endkm", bounds.getUpper()); } else if (xBounds != null && getDomainAxisRange() == null) { context.putContextValue("startkm", xBounds.getLower()); context.putContextValue("endkm", xBounds.getUpper()); } else if (xBounds == null && getDomainAxisRange() == null) { BedDifferencesResult data = (BedDifferencesResult)bundle.getData(context); if (data.getKms().size() > 0) { context.putContextValue("startkm", data.getKms().min()); context.putContextValue("endkm", data.getKms().max()); } else { logger.warn("No data to define start and end km"); } } else if (xBounds == null && getDomainAxisRange() != null){ BedDifferencesResult data = (BedDifferencesResult)bundle.getData(context); Bounds b = new DoubleBounds(data.getKms().min(), data.getKms().max()); Bounds bounds = calculateZoom(b, getDomainAxisRange()); context.putContextValue("startkm", bounds.getLower()); context.putContextValue("endkm", bounds.getUpper()); } } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :