Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixWQCurveGenerator.java @ 3056:0b5a7a2c3724
Try to workaround some exception in FixWQCurveFacet and FixWQCurveGenerator
flys-artifacts/trunk@4632 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Sun, 10 Jun 2012 11:12:38 +0000 |
parents | 1fbf8462f808 |
children | febc39e77672 |
comparison
equal
deleted
inserted
replaced
3055:1fbf8462f808 | 3056:0b5a7a2c3724 |
---|---|
1 package de.intevation.flys.exports.fixings; | 1 package de.intevation.flys.exports.fixings; |
2 | 2 |
3 import de.intevation.artifactdatabase.state.ArtifactAndFacet; | 3 import de.intevation.artifactdatabase.state.ArtifactAndFacet; |
4 import de.intevation.flys.artifacts.model.FacetTypes; | 4 import de.intevation.flys.artifacts.model.FacetTypes; |
5 import de.intevation.flys.artifacts.model.WQDay; | 5 import de.intevation.flys.artifacts.model.WQDay; |
6 import de.intevation.flys.artifacts.model.fixings.FixFunction; | |
6 import de.intevation.flys.artifacts.model.fixings.QW; | 7 import de.intevation.flys.artifacts.model.fixings.QW; |
7 import de.intevation.flys.exports.ChartGenerator; | 8 import de.intevation.flys.exports.ChartGenerator; |
8 import de.intevation.flys.exports.XYChartGenerator; | 9 import de.intevation.flys.exports.XYChartGenerator; |
9 import de.intevation.flys.jfree.StyledXYSeries; | 10 import de.intevation.flys.jfree.StyledXYSeries; |
10 | 11 |
52 idx = c; | 53 idx = c; |
53 } | 54 } |
54 } | 55 } |
55 | 56 |
56 @Override | 57 @Override |
57 public void doOut(ArtifactAndFacet bundle, Document doc, boolean visible) { | 58 public void doOut(ArtifactAndFacet aaf, Document doc, boolean visible) { |
58 String name = bundle.getFacetName(); | 59 String name = aaf.getFacetName(); |
59 /* Object data; | |
60 try { | |
61 data = bundle.getData(context); | |
62 } catch(NullPointerException ex) { // FIXME it's crashing on every edge | |
63 logger.error("doOut Exception catched", ex); | |
64 data = new Object(); | |
65 }*/ | |
66 logger.debug("doOut: " + name); | 60 logger.debug("doOut: " + name); |
67 //logger.debug("doOut: data is instanceof " + data.toString()); | 61 |
68 | |
69 if(FIX_SECTOR_AVERAGE_WQ.equals(name)) { | 62 if(FIX_SECTOR_AVERAGE_WQ.equals(name)) { |
70 doSectorAverageOut(bundle, doc, visible); | 63 doSectorAverageOut(aaf, doc, visible); |
71 } else if(FIX_ANALYSIS_EVENTS_WQ.equals(name)) { | 64 } else if(FIX_ANALYSIS_EVENTS_WQ.equals(name)) { |
72 doAnalysisEventsOut(bundle, doc, visible); | 65 doAnalysisEventsOut(aaf, doc, visible); |
73 } else if(FIX_ANALYSIS_PERIODS_WQ.equals(name)) { | 66 } else if(FIX_ANALYSIS_PERIODS_WQ.equals(name)) { |
74 doAnalysisPeriodsOut(bundle, doc, visible); | 67 doAnalysisPeriodsOut(aaf, doc, visible); |
75 } else if(FIX_REFERENCE_EVENTS_WQ.equals(name)) { | 68 } else if(FIX_REFERENCE_EVENTS_WQ.equals(name)) { |
76 doReferenceEventsOut(bundle, doc, visible); | 69 doReferenceEventsOut(aaf, doc, visible); |
77 } else if(FIX_WQ_CURVE.equals(name)) { | 70 } else if(FIX_WQ_CURVE.equals(name)) { |
78 doWQOut(new QW(13.37, 42.23, "Unknown point", new Date()), bundle, doc, visible); | 71 doWQCurveOut(aaf, doc, visible); |
79 } else if(FIX_OUTLIER.equals(name)) { | 72 } else if(FIX_OUTLIER.equals(name)) { |
80 doOutlierOut(bundle, doc, visible); | 73 doOutlierOut(aaf, doc, visible); |
81 } else { | 74 } else { |
82 logger.warn("Unknown facet name " + name); | 75 logger.warn("Unknown facet name " + name); |
83 return; | 76 return; |
84 } | 77 } |
85 } | 78 } |
130 } | 123 } |
131 | 124 |
132 addAxisSeries(series, 0, visible); | 125 addAxisSeries(series, 0, visible); |
133 } | 126 } |
134 | 127 |
135 protected void doWQOut( | 128 protected void doWQCurveOut(ArtifactAndFacet aaf, Document doc, boolean visible) { |
136 QW wqdays, | 129 logger.debug("doWQCurveOut"); |
137 ArtifactAndFacet aaf, | |
138 Document theme, | |
139 boolean visible | |
140 ) { | |
141 logger.debug("doWQOut"); | |
142 | 130 |
143 XYSeries series = new StyledXYSeries(aaf.getFacetDescription(), theme); | 131 FixFunction func = (FixFunction)aaf.getData(context); |
144 java.util.Random rand = new java.util.Random(1000); | |
145 int size = 10; //wqdays.size(); | |
146 for (int i = 0; i < size; i++) { | |
147 //int day = wqdays.getDate(i); | |
148 //double q = wqdays.getQ(i); | |
149 | 132 |
150 series.add(rand.nextDouble(), rand.nextDouble()); | 133 XYSeries series = new StyledXYSeries(aaf.getFacetDescription(), doc); |
134 for (int q = 0; q <= func.getMaxQ(); q += 1.0) { | |
135 series.add(q, func.getFunction().value(q)); | |
151 } | 136 } |
152 | 137 |
153 addAxisSeries(series, 0, visible); | 138 addAxisSeries(series, 0, visible); |
154 } | 139 } |
155 | 140 |