comparison flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/BedQualityGenerator.java @ 3762:0c978a80726a

Splitted up facets for porosity and density into two facets: a toplayer and a sublayer facet for each. BedQualityState will now create facets based on the calculation result. flys-artifacts/trunk@5464 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 14 Sep 2012 07:12:08 +0000
parents e8a90a5ce624
children d29cebf371ba
comparison
equal deleted inserted replaced
3761:066e2b4d69ca 3762:0c978a80726a
4 import org.jfree.data.xy.XYSeries; 4 import org.jfree.data.xy.XYSeries;
5 import org.w3c.dom.Document; 5 import org.w3c.dom.Document;
6 6
7 import de.intevation.artifactdatabase.state.ArtifactAndFacet; 7 import de.intevation.artifactdatabase.state.ArtifactAndFacet;
8 import de.intevation.artifactdatabase.state.Facet; 8 import de.intevation.artifactdatabase.state.Facet;
9 import de.intevation.flys.artifacts.FLYSArtifact;
10 import de.intevation.flys.artifacts.model.FacetTypes; 9 import de.intevation.flys.artifacts.model.FacetTypes;
11 import de.intevation.flys.artifacts.model.MiddleBedHeightData; 10 import de.intevation.flys.artifacts.model.minfo.BedBedQualityResult;
12 import de.intevation.flys.exports.ChartGenerator.YAxisWalker; 11 import de.intevation.flys.artifacts.model.minfo.BedLoadBedQualityResult;
13 import de.intevation.flys.exports.StyledSeriesBuilder;
14 import de.intevation.flys.exports.XYChartGenerator; 12 import de.intevation.flys.exports.XYChartGenerator;
15 import de.intevation.flys.jfree.FLYSAnnotation;
16 import de.intevation.flys.jfree.StyledXYSeries; 13 import de.intevation.flys.jfree.StyledXYSeries;
17 import de.intevation.flys.utils.FLYSUtils;
18 14
19 15
20 /** 16 /**
21 * An OutGenerator that generates bed quality charts. 17 * An OutGenerator that generates bed quality charts.
22 * 18 *
146 if (facet == null) { 142 if (facet == null) {
147 return; 143 return;
148 } 144 }
149 145
150 if (name.equals(BED_QUALITY_BED_DIAMETER)) { 146 if (name.equals(BED_QUALITY_BED_DIAMETER)) {
151 doBedDiameterOut(artifactAndFacet.getData(context), // TODO CAST TO 147 doBedDiameterOut(
152 // SPECIFIC 148 (BedBedQualityResult) artifactAndFacet.getData(context),
153 // CLASS
154 artifactAndFacet, attr, visible); 149 artifactAndFacet, attr, visible);
155 } 150 }
156 else if (name.equals(BED_QUALITY_BEDLOAD_DIAMETER)) { 151 else if (name.equals(BED_QUALITY_BEDLOAD_DIAMETER)) {
157 doBedloadDiameterOut(artifactAndFacet.getData(context), // TODO CAST 152 doBedloadDiameterOut(
158 // TO 153 (BedLoadBedQualityResult) artifactAndFacet.getData(context),
159 // SPECIFIC 154 artifactAndFacet, attr, visible);
160 // CLASS 155 }
161 artifactAndFacet, attr, visible); 156 else if (name.equals(BED_QUALITY_POROSITY_TOPLAYER)
162 } 157 || name.equals(BED_QUALITY_POROSITY_SUBLAYER)) {
163 else if (name.equals(BED_QUALITY_POROSITY)) { 158 doPorosityOut(
164 doPorosityOut(artifactAndFacet.getData(context), // TODO CAST TO 159 (BedBedQualityResult) artifactAndFacet.getData(context),
165 // SPECIFIC CLASS 160 artifactAndFacet, attr, visible);
166 artifactAndFacet, attr, visible); 161 }
167 } 162 else if (name.equals(BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER)
168 else if (name.equals(BED_QUALITY_SEDIMENT_DENSITY)) { 163 || name.equals(BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER)) {
169 doDensityOut(artifactAndFacet.getData(context), // TODO CAST TO 164 doDensityOut(
170 // SPECIFIC CLASS 165 (BedBedQualityResult) artifactAndFacet.getData(context),
171 artifactAndFacet, attr, visible); 166 artifactAndFacet, attr, visible);
172 } 167 }
173 else if (FacetTypes.IS.MANUALPOINTS(name)) { 168 else if (FacetTypes.IS.MANUALPOINTS(name)) {
174 doPoints(artifactAndFacet.getData(context), artifactAndFacet, attr, 169 doPoints(artifactAndFacet.getData(context), artifactAndFacet, attr,
175 visible, YAXIS.W.idx); 170 visible, YAXIS.W.idx);
178 logger.warn("Unknown facet name: " + name); 173 logger.warn("Unknown facet name: " + name);
179 return; 174 return;
180 } 175 }
181 } 176 }
182 177
183 protected void doBedDiameterOut(Object data, ArtifactAndFacet aandf, 178 protected void doBedDiameterOut(BedBedQualityResult data,
184 Document theme, boolean visible) { 179 ArtifactAndFacet aandf, Document theme, boolean visible) {
185 logger.debug("BedQuality.doBedDiameterOut"); 180 logger.debug("BedQuality.doBedDiameterOut");
186 181
187 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme); 182 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme);
188 183
189 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(), 184 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(),
190 // true); 185 // true);
191 186
192 addAxisSeries(series, YAXIS.W.idx, visible); 187 addAxisSeries(series, YAXIS.W.idx, visible);
193 } 188 }
194 189
195 protected void doBedloadDiameterOut(Object data, ArtifactAndFacet aandf, 190 protected void doBedloadDiameterOut(BedLoadBedQualityResult data,
196 Document theme, boolean visible) { 191 ArtifactAndFacet aandf, Document theme, boolean visible) {
197 logger.debug("BedQuality.doBedloadDiameterOut"); 192 logger.debug("BedQuality.doBedloadDiameterOut");
198 193
199 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme); 194 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme);
200 195
201 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(), 196 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(),
202 // true); 197 // true);
203 198
204 addAxisSeries(series, YAXIS.W.idx, visible); 199 addAxisSeries(series, YAXIS.W.idx, visible);
205 } 200 }
206 201
207 protected void doPorosityOut(Object data, ArtifactAndFacet aandf, 202 protected void doPorosityOut(BedBedQualityResult data,
208 Document theme, boolean visible) { 203 ArtifactAndFacet aandf, Document theme, boolean visible) {
209 logger.debug("BedQuality.doPorosityOut"); 204 logger.debug("BedQuality.doPorosityOut");
210 205
211 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme); 206 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme);
212 207
213 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(), 208 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(),
214 // true); 209 // true);
215 210
216 addAxisSeries(series, YAXIS.P.idx, visible); 211 addAxisSeries(series, YAXIS.P.idx, visible);
217 } 212 }
218 213
219 protected void doDensityOut(Object data, ArtifactAndFacet aandf, 214 protected void doDensityOut(BedBedQualityResult data,
220 Document theme, boolean visible) { 215 ArtifactAndFacet aandf, Document theme, boolean visible) {
221 logger.debug("BedQuality.doDensityOut"); 216 logger.debug("BedQuality.doDensityOut");
222 217
223 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme); 218 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme);
224 219
225 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(), 220 // StyledSeriesBuilder.addPoints(series, data.getMiddleHeightsPoints(),

http://dive4elements.wald.intevation.org