comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodHeightProcessor.java @ 9620:26e113e8224f

Nachtrag Pos. 20: flood duration calculation for multiple infrastructure groups/types, local class FloodDurationCalculationResult.Infrastructure renamed and extracted into own class
author mschaefer
date Thu, 10 Oct 2019 17:11:54 +0200
parents f8308db94634
children
comparison
equal deleted inserted replaced
9619:63bbd5e45839 9620:26e113e8224f
18 import org.dive4elements.artifacts.CallContext; 18 import org.dive4elements.artifacts.CallContext;
19 import org.dive4elements.river.artifacts.common.AbstractCalculationResult; 19 import org.dive4elements.river.artifacts.common.AbstractCalculationResult;
20 import org.dive4elements.river.artifacts.common.AbstractProcessor; 20 import org.dive4elements.river.artifacts.common.AbstractProcessor;
21 import org.dive4elements.river.artifacts.resources.Resources; 21 import org.dive4elements.river.artifacts.resources.Resources;
22 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; 22 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
23 import org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationCalculationResult.Infrastructure;
24 import org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationCalculationResult.ValueGetter; 23 import org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationCalculationResult.ValueGetter;
25 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; 24 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType;
26 import org.dive4elements.river.exports.DiagramGenerator; 25 import org.dive4elements.river.exports.DiagramGenerator;
27 import org.dive4elements.river.model.Attribute.AttributeKey; 26 import org.dive4elements.river.model.Attribute.AttributeKey;
28 import org.dive4elements.river.themes.ThemeDocument; 27 import org.dive4elements.river.themes.ThemeDocument;
56 public FloodHeightProcessor() { 55 public FloodHeightProcessor() {
57 super(I18N_AXIS_LABEL, HANDLED_FACET_TYPES); 56 super(I18N_AXIS_LABEL, HANDLED_FACET_TYPES);
58 } 57 }
59 58
60 public static Facet createFloodHeightFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, 59 public static Facet createFloodHeightFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result,
61 final int facetIndex, final int resultIndex, final Infrastructure infrastructure) { 60 final int facetIndex, final int resultIndex, final FloodDurationInfrastructureChoice infrastructure) {
62 61
63 final String facetName = infrastructure.getRiverside().equals(AttributeKey.LEFT) ? FACET_FLOOD_HEIGHT_LEFT : FACET_FLOOD_HEIGHT_RIGHT; 62 final String facetName = infrastructure.getRiverside().equals(AttributeKey.LEFT) ? FACET_FLOOD_HEIGHT_LEFT : FACET_FLOOD_HEIGHT_RIGHT;
64 final String description = infrastructure.getFloodHeightLabel(context); 63 final String description = infrastructure.getFloodHeightLabel(context);
65 return new InfrastructureResultFacet(facetIndex, resultIndex, facetName, description, I18N_AXIS_LABEL, id, hash, infrastructure); 64 return new InfrastructureResultFacet(facetIndex, resultIndex, facetName, description, I18N_AXIS_LABEL, id, hash, infrastructure);
66 } 65 }
106 105
107 private String buildInfrastructureSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, 106 private String buildInfrastructureSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme,
108 final boolean visible) { 107 final boolean visible) {
109 108
110 final InfrastructureResultFacet infFacet = (InfrastructureResultFacet) bundle.getFacet(); 109 final InfrastructureResultFacet infFacet = (InfrastructureResultFacet) bundle.getFacet();
111 final Infrastructure infrastructure = infFacet.getInfrastructure(); 110 final FloodDurationInfrastructureChoice infrastructure = infFacet.getInfrastructure();
112 111
113 final FloodDurationCalculationResult data = (FloodDurationCalculationResult) getResult(generator, bundle); 112 final FloodDurationCalculationResult data = (FloodDurationCalculationResult) getResult(generator, bundle);
114 113
115 final double[][] points = data.getInfrastructurePoints(SInfoResultType.infrastructureHeight, infrastructure); 114 final double[][] points = data.getInfrastructurePoints(SInfoResultType.infrastructureHeight, infrastructure);
116 115

http://dive4elements.wald.intevation.org