Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/exports/process/FlowVelocityProcessor.java @ 7877:43f18dc56c5a
Fixed subtitle handling and added flowvelocity subtitle.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Fri, 16 May 2014 10:55:59 +0200 |
parents | 440c55b9634e |
children | 45cced06490c |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/exports/process/FlowVelocityProcessor.java Fri May 16 09:32:51 2014 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/process/FlowVelocityProcessor.java Fri May 16 10:55:59 2014 +0200 @@ -13,7 +13,11 @@ import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; import org.dive4elements.artifacts.CallContext; +import org.dive4elements.river.artifacts.D4EArtifact; +import org.dive4elements.river.artifacts.access.RiverAccess; +import org.dive4elements.river.artifacts.context.RiverContext; import org.dive4elements.river.artifacts.model.FacetTypes; +import org.dive4elements.river.artifacts.model.ZoomScale; import org.dive4elements.river.exports.DiagramGenerator; import org.dive4elements.river.exports.StyledSeriesBuilder; import org.dive4elements.river.jfree.StyledXYSeries; @@ -21,6 +25,7 @@ import org.dive4elements.river.model.FlowVelocityMeasurementValue.FastFlowVelocityMeasurementValue; import org.dive4elements.river.artifacts.model.FlowVelocityData; +import org.dive4elements.river.artifacts.resources.Resources; public class FlowVelocityProcessor extends DefaultProcessor { @@ -31,6 +36,8 @@ "chart.flow_velocity.section.yaxis.label"; public static final String I18N_AXIS_LABEL_DEFAULT = "Geschwindigkeit v [m/s]"; + public static final String I18N_SUBTITLE_RADIUS = + "chart.subtitle.radius"; @Override public void doOut( @@ -68,7 +75,24 @@ return; } StyledSeriesBuilder.addPoints(series, points, true); + Double start = (Double)context.getContextValue("startkm"); + Double end = (Double)context.getContextValue("endkm"); + if (start != null && end != null) { + logger.debug("start: " + start + " end: " + end); + D4EArtifact artifact = (D4EArtifact)bundle.getArtifact(); + RiverContext fc = (RiverContext)context.globalContext(); + // Adaptive smoothing, based on zoom factor/diagram extents. + ZoomScale scales = (ZoomScale)fc.get("zoomscale"); + RiverAccess access = new RiverAccess((D4EArtifact)artifact); + String river = access.getRiverName(); + double radius = scales.getRadius(river, start, end); + logger.debug("add a subtitle"); + generator.addSubtitle(Resources.getMsg( + context.getMeta(), + I18N_SUBTITLE_RADIUS, + new Object[] { radius })); + } generator.addAxisSeries(series, axisName, visible); }