comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/CollisionCalcProcessor.java @ 9195:a4121ec450d6

'ca.'-issue ExportContextCSV+PDF separated uinfo.inundationduration url export
author gernotbelger
date Fri, 29 Jun 2018 14:52:54 +0200
parents f9bb5d0a6ff3
children 6393e05a9610
comparison
equal deleted inserted replaced
9191:f692f5a0536a 9195:a4121ec450d6
17 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; 17 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
18 import org.dive4elements.artifactdatabase.state.Facet; 18 import org.dive4elements.artifactdatabase.state.Facet;
19 import org.dive4elements.artifacts.Artifact; 19 import org.dive4elements.artifacts.Artifact;
20 import org.dive4elements.artifacts.CallContext; 20 import org.dive4elements.artifacts.CallContext;
21 import org.dive4elements.river.artifacts.common.AbstractCalculationResult; 21 import org.dive4elements.river.artifacts.common.AbstractCalculationResult;
22 import org.dive4elements.river.artifacts.common.IResultType;
22 import org.dive4elements.river.artifacts.resources.Resources; 23 import org.dive4elements.river.artifacts.resources.Resources;
23 import org.dive4elements.river.artifacts.sinfo.collision.CollisionCalcFacet; 24 import org.dive4elements.river.artifacts.sinfo.collision.CollisionCalcFacet;
24 import org.dive4elements.river.artifacts.sinfo.collision.CollisionCalcOverviewResult;
25 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; 25 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType;
26 import org.dive4elements.river.exports.DiagramGenerator; 26 import org.dive4elements.river.exports.DiagramGenerator;
27 import org.dive4elements.river.exports.StyledSeriesBuilder; 27 import org.dive4elements.river.exports.StyledSeriesBuilder;
28 import org.dive4elements.river.jfree.StyledXYSeries; 28 import org.dive4elements.river.jfree.StyledXYSeries;
29 import org.dive4elements.river.themes.ThemeDocument; 29 import org.dive4elements.river.themes.ThemeDocument;
53 } 53 }
54 54
55 @Override 55 @Override
56 protected String generateSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, final boolean visible) { 56 protected String generateSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, final boolean visible) {
57 57
58 return buildSeriesForType(generator, bundle, theme, visible, SInfoResultType.collisionCount);
59 }
60
61 // FIXME: move to super classs and use in many implementations
62 protected final String buildSeriesForType(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, final boolean visible,
63 final IResultType resultType) {
58 final CallContext context = generator.getContext(); 64 final CallContext context = generator.getContext();
59 final Map<String, String> metaData = bundle.getFacet().getMetaData(); 65 final Map<String, String> metaData = bundle.getFacet().getMetaData();
60 66
61 final Artifact artifact = bundle.getArtifact(); 67 final Artifact artifact = bundle.getArtifact();
62 68
63 final StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(), theme); 69 final StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(), theme);
64 series.putMetaData(metaData, artifact, context); 70 series.putMetaData(metaData, artifact, context);
65 71
66 final String facetName = bundle.getFacetName(); 72 final String facetName = bundle.getFacetName();
67 73
68 final CollisionCalcOverviewResult data = (CollisionCalcOverviewResult) bundle.getData(context); 74 final AbstractCalculationResult data = (AbstractCalculationResult) bundle.getData(context);
69 if (data == null) { 75 if (data == null) {
70 // Check has been here before so we keep it for security reasons 76 // Check has been here before so we keep it for security reasons
71 // this should never happen though. 77 // this should never happen though.
72 throw new IllegalStateException("Data is null for facet: " + facetName); 78 throw new IllegalStateException("Data is null for facet: " + facetName);
73 } 79 }
74 80
75 final double[][] points = data.getStationPoints(SInfoResultType.collisionCount); 81 final double[][] points = data.getStationPoints(resultType);
76 82
77 StyledSeriesBuilder.addPoints(series, points, true); 83 StyledSeriesBuilder.addPoints(series, points, true);
78 generator.addAxisSeries(series, getAxisName(), visible); 84 generator.addAxisSeries(series, getAxisName(), visible);
79 85
80 return metaData.get("Y"); 86 return metaData.get("Y");

http://dive4elements.wald.intevation.org