comparison artifacts/src/main/java/org/dive4elements/river/exports/DischargeCurveGenerator.java @ 6883:3df41681f326

issue1378: Prepare DischargeCurveGenerator to digest wq-interpolated data.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 21 Aug 2013 11:11:56 +0200
parents a77dca301419
children 5a1078fd53e1
comparison
equal deleted inserted replaced
6882:a77dca301419 6883:3df41681f326
209 else if (FacetTypes.IS.MANUALPOINTS(name)) { 209 else if (FacetTypes.IS.MANUALPOINTS(name)) {
210 doPoints(artifactFacet.getData(context), 210 doPoints(artifactFacet.getData(context),
211 artifactFacet, 211 artifactFacet,
212 theme, visible, YAXIS.W.idx); 212 theme, visible, YAXIS.W.idx);
213 } 213 }
214 else if (STATIC_WQ.equals(name)) {
215 doWQOut(artifactFacet.getData(context),
216 artifactFacet,
217 theme,
218 visible);
219 }
214 else { 220 else {
215 logger.warn("DischargeCurveGenerator.doOut: Unknown facet name: " + name); 221 logger.warn("DischargeCurveGenerator.doOut: Unknown facet name: " + name);
216 return; 222 return;
217 } 223 }
218 } 224 }
251 257
252 StyledSeriesBuilder.addPointsQW(series, wqkms); 258 StyledSeriesBuilder.addPointsQW(series, wqkms);
253 259
254 addAxisSeries(series, YAXIS.W.idx, visible); 260 addAxisSeries(series, YAXIS.W.idx, visible);
255 } 261 }
262
263 /**
264 * Add W/Q-Series to plot.
265 * @param wqkms actual data
266 * @param theme theme to use.
267 */
268 protected void doQOut(
269 Object wqkms,
270 ArtifactAndFacet aaf,
271 Document theme,
272 boolean visible
273 ) {
274 logger.debug("DischargeCurveGenerator: doQOut (add W/Q data).");
275 XYSeries series = new StyledXYSeries(aaf.getFacetDescription(), theme);
276
277 StyledSeriesBuilder.addPointsQW(series, (WQKms) wqkms);
278
279 addAxisSeries(series, YAXIS.W.idx, visible);
280 }
281
282 /**
283 * Add WQ Data to plot.
284 * @param wq data as double[][]
285 */
286 protected void doWQOut(
287 Object wq,
288 ArtifactAndFacet aaf,
289 Document theme,
290 boolean visible
291 ) {
292 logger.debug("DischargeCurveGenerator: doWQOut");
293 double [][] data = (double [][]) wq;
294
295 XYSeries series = new StyledXYSeries(aaf.getFacetDescription(), theme);
296
297 double translate = getCurrentGaugeDatum();
298 if (translate != 0d) {
299 StyledSeriesBuilder.addPointsQW(series, data, -translate, 100d);
300 addAxisSeries(series, YAXIS.W.idx, visible);
301 }
302 else {
303 StyledSeriesBuilder.addPoints(series, data, true);
304 addAxisSeries(series, YAXIS.W.idx, visible);
305 }
306 }
307
256 } 308 }
257 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 309 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org