Mercurial > dive4elements > river
comparison 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 |
comparison
equal
deleted
inserted
replaced
7876:5951d6430ade | 7877:43f18dc56c5a |
---|---|
11 import org.apache.log4j.Logger; | 11 import org.apache.log4j.Logger; |
12 import org.jfree.data.xy.XYSeries; | 12 import org.jfree.data.xy.XYSeries; |
13 | 13 |
14 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; | 14 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; |
15 import org.dive4elements.artifacts.CallContext; | 15 import org.dive4elements.artifacts.CallContext; |
16 import org.dive4elements.river.artifacts.D4EArtifact; | |
17 import org.dive4elements.river.artifacts.access.RiverAccess; | |
18 import org.dive4elements.river.artifacts.context.RiverContext; | |
16 import org.dive4elements.river.artifacts.model.FacetTypes; | 19 import org.dive4elements.river.artifacts.model.FacetTypes; |
20 import org.dive4elements.river.artifacts.model.ZoomScale; | |
17 import org.dive4elements.river.exports.DiagramGenerator; | 21 import org.dive4elements.river.exports.DiagramGenerator; |
18 import org.dive4elements.river.exports.StyledSeriesBuilder; | 22 import org.dive4elements.river.exports.StyledSeriesBuilder; |
19 import org.dive4elements.river.jfree.StyledXYSeries; | 23 import org.dive4elements.river.jfree.StyledXYSeries; |
20 import org.dive4elements.river.themes.ThemeDocument; | 24 import org.dive4elements.river.themes.ThemeDocument; |
21 | 25 |
22 import org.dive4elements.river.model.FlowVelocityMeasurementValue.FastFlowVelocityMeasurementValue; | 26 import org.dive4elements.river.model.FlowVelocityMeasurementValue.FastFlowVelocityMeasurementValue; |
23 import org.dive4elements.river.artifacts.model.FlowVelocityData; | 27 import org.dive4elements.river.artifacts.model.FlowVelocityData; |
28 import org.dive4elements.river.artifacts.resources.Resources; | |
24 | 29 |
25 public class FlowVelocityProcessor extends DefaultProcessor { | 30 public class FlowVelocityProcessor extends DefaultProcessor { |
26 | 31 |
27 private final static Logger logger = | 32 private final static Logger logger = |
28 Logger.getLogger(FlowVelocityProcessor.class); | 33 Logger.getLogger(FlowVelocityProcessor.class); |
29 | 34 |
30 public static final String I18N_AXIS_LABEL = | 35 public static final String I18N_AXIS_LABEL = |
31 "chart.flow_velocity.section.yaxis.label"; | 36 "chart.flow_velocity.section.yaxis.label"; |
32 public static final String I18N_AXIS_LABEL_DEFAULT = | 37 public static final String I18N_AXIS_LABEL_DEFAULT = |
33 "Geschwindigkeit v [m/s]"; | 38 "Geschwindigkeit v [m/s]"; |
39 public static final String I18N_SUBTITLE_RADIUS = | |
40 "chart.subtitle.radius"; | |
34 | 41 |
35 @Override | 42 @Override |
36 public void doOut( | 43 public void doOut( |
37 DiagramGenerator generator, | 44 DiagramGenerator generator, |
38 ArtifactAndFacet bundle, | 45 ArtifactAndFacet bundle, |
66 } else { | 73 } else { |
67 logger.error("Unknown facet name: " + facetName); | 74 logger.error("Unknown facet name: " + facetName); |
68 return; | 75 return; |
69 } | 76 } |
70 StyledSeriesBuilder.addPoints(series, points, true); | 77 StyledSeriesBuilder.addPoints(series, points, true); |
78 Double start = (Double)context.getContextValue("startkm"); | |
79 Double end = (Double)context.getContextValue("endkm"); | |
80 if (start != null && end != null) { | |
81 logger.debug("start: " + start + " end: " + end); | |
82 D4EArtifact artifact = (D4EArtifact)bundle.getArtifact(); | |
83 RiverContext fc = (RiverContext)context.globalContext(); | |
84 // Adaptive smoothing, based on zoom factor/diagram extents. | |
85 ZoomScale scales = (ZoomScale)fc.get("zoomscale"); | |
86 RiverAccess access = new RiverAccess((D4EArtifact)artifact); | |
87 String river = access.getRiverName(); | |
71 | 88 |
89 double radius = scales.getRadius(river, start, end); | |
90 logger.debug("add a subtitle"); | |
91 generator.addSubtitle(Resources.getMsg( | |
92 context.getMeta(), | |
93 I18N_SUBTITLE_RADIUS, | |
94 new Object[] { radius })); | |
95 } | |
72 generator.addAxisSeries(series, axisName, visible); | 96 generator.addAxisSeries(series, axisName, visible); |
73 } | 97 } |
74 | 98 |
75 @Override | 99 @Override |
76 public boolean canHandle(String facettype) { | 100 public boolean canHandle(String facettype) { |