Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationCurveProcessor.java @ 9376:f318359b81a2
S-Info flood duration theme rename, and more infrastructure themes in the duration curve
author | mschaefer |
---|---|
date | Fri, 03 Aug 2018 17:02:38 +0200 |
parents | 66b003701546 |
children | f8308db94634 |
comparison
equal
deleted
inserted
replaced
9375:a0a2e68a1e11 | 9376:f318359b81a2 |
---|---|
18 import org.dive4elements.river.artifacts.common.AbstractCalculationResult; | 18 import org.dive4elements.river.artifacts.common.AbstractCalculationResult; |
19 import org.dive4elements.river.artifacts.model.FacetTypes; | 19 import org.dive4elements.river.artifacts.model.FacetTypes; |
20 import org.dive4elements.river.exports.DiagramGenerator; | 20 import org.dive4elements.river.exports.DiagramGenerator; |
21 import org.dive4elements.river.exports.DurationCurveGenerator; | 21 import org.dive4elements.river.exports.DurationCurveGenerator; |
22 import org.dive4elements.river.exports.process.DefaultProcessor; | 22 import org.dive4elements.river.exports.process.DefaultProcessor; |
23 import org.dive4elements.river.model.Attribute.AttributeKey; | |
23 | 24 |
24 /** | 25 /** |
25 * Processor to generate the facet and data series of a flood duration curve | 26 * Processor to generate the facet and data series of a flood duration curve |
26 * | 27 * |
27 * @author Matthias Schäfer | 28 * @author Matthias Schäfer |
35 | 36 |
36 public static final String FACET_FLOOD_DURATION_MAINVALUES_W = "sinfo.mainvalues.w"; | 37 public static final String FACET_FLOOD_DURATION_MAINVALUES_W = "sinfo.mainvalues.w"; |
37 | 38 |
38 public static final String FACET_FLOOD_DURATION_MAINVALUES_Q = "sinfo.mainvalues.q"; | 39 public static final String FACET_FLOOD_DURATION_MAINVALUES_Q = "sinfo.mainvalues.q"; |
39 | 40 |
40 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE = "infrastructure.wq"; | 41 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT = "infrastructure.w.left"; |
42 | |
43 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT = "infrastructure.w.right"; | |
44 | |
45 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT = "infrastructure.q.left"; | |
46 | |
47 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT = "infrastructure.q.right"; | |
41 | 48 |
42 private static final Set<String> HANDLED_FACET_TYPES = new HashSet<>(); | 49 private static final Set<String> HANDLED_FACET_TYPES = new HashSet<>(); |
43 | 50 |
44 static { | 51 static { |
45 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_W); | 52 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_W); |
46 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_Q); | 53 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_Q); |
47 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_W); | 54 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_W); |
48 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_Q); | 55 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_Q); |
49 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE); | 56 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT); |
57 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT); | |
58 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT); | |
59 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT); | |
60 } | |
61 | |
62 public static boolean isInfrastructureFacet(final String name) { | |
63 return name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT) || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT) | |
64 || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT) || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT); | |
50 } | 65 } |
51 | 66 |
52 public static Facet createFloodDurationWCurveFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, | 67 public static Facet createFloodDurationWCurveFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, |
53 final int facetIndex, final int resultIndex, final String description) { | 68 final int facetIndex, final int resultIndex, final String description) { |
54 | 69 |
71 final int facetIndex, final int resultIndex, final String description) { | 86 final int facetIndex, final int resultIndex, final String description) { |
72 | 87 |
73 return new FloodDurationMainValuesQFacet(FACET_FLOOD_DURATION_MAINVALUES_Q, description); | 88 return new FloodDurationMainValuesQFacet(FACET_FLOOD_DURATION_MAINVALUES_Q, description); |
74 } | 89 } |
75 | 90 |
76 public static Facet createInfrastructureWFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, | 91 public static Facet createInfrastructureFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, |
77 final int facetIndex, final int resultIndex, final String description) { | 92 final int facetIndex, final int resultIndex, final String description, final AttributeKey riverside, final boolean isW) { |
78 | 93 |
79 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE, description); | 94 if (riverside == AttributeKey.LEFT) { |
95 if (isW) | |
96 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT, description, riverside, isW); | |
97 else | |
98 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT, description, riverside, isW); | |
99 } | |
100 else { | |
101 if (isW) | |
102 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT, description, riverside, isW); | |
103 else | |
104 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT, description, riverside, isW); | |
105 } | |
80 } | 106 } |
81 | 107 |
82 @Override | 108 @Override |
83 public final String getAxisLabel(final DiagramGenerator generator) { | 109 public final String getAxisLabel(final DiagramGenerator generator) { |
84 return generator.msg(DurationCurveGenerator.I18N_YAXIS_LABEL_W); | 110 return generator.msg(DurationCurveGenerator.I18N_YAXIS_LABEL_W); |