Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationInfrastructureFacet.java @ 9612:f8308db94634
#20 UI, Diagramme
author | dnt_bjoernsen <d.tironi@bjoernsen.de> |
---|---|
date | Wed, 09 Oct 2019 16:17:16 +0200 |
parents | f318359b81a2 |
children |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationInfrastructureFacet.java Wed Oct 09 15:58:46 2019 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationInfrastructureFacet.java Wed Oct 09 16:17:16 2019 +0200 @@ -17,6 +17,7 @@ import org.dive4elements.artifacts.Artifact; import org.dive4elements.artifacts.CallContext; import org.dive4elements.river.artifacts.D4EArtifact; +import org.dive4elements.river.artifacts.model.Calculation; import org.dive4elements.river.artifacts.model.CalculationResult; import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; import org.dive4elements.river.exports.fixings.FixChartGenerator; @@ -24,28 +25,32 @@ import org.dive4elements.river.jfree.StickyAxisAnnotation; import org.dive4elements.river.model.Attribute.AttributeKey; - /** * Facet to show W and Q annotation lines of an infrastructure height. */ public class FloodDurationInfrastructureFacet extends DefaultFacet { + private static final long serialVersionUID = 1L; + /** Own log. */ private static Logger log = Logger.getLogger(FloodDurationInfrastructureFacet.class); - private final AttributeKey riverBankKey; - private final boolean isW; - public FloodDurationInfrastructureFacet(final String name, final String description, final AttributeKey riverside, final boolean isW) { + private final int m_resultIndex; + + private final AttributeKey m_riverside; + + public FloodDurationInfrastructureFacet(final String name, final boolean isW, final int resultIndex, final AttributeKey attributeKey, final int facetIndex, + final String description) { this.description = description; this.name = name; - this.index = 0; - this.riverBankKey = riverside; + this.index = facetIndex; + this.m_riverside = attributeKey; this.isW = isW; + this.m_resultIndex = resultIndex; } - /** * Returns the data this facet requires. */ @@ -60,24 +65,28 @@ final FloodDurationCalculationResults data = (FloodDurationCalculationResults) res.getData(); + final FloodDurationCalculationResult result = data.getResults().get(this.m_resultIndex); + final double currentKm = FixChartGenerator.getCurrentKm(context); - final List<StickyAxisAnnotation> annotations = new FloodDurationCalculation(context).calcInfrastructureAnnotations(currentKm, - this.riverBankKey, this.isW, data.getResults().get(this.index)); + final Calculation problems = new Calculation(); + + final FacetCalculator calculator = new FacetCalculator(context); + final List<StickyAxisAnnotation> annotations = calculator.calcInfrastructureAnnotations(problems, currentKm, this.isW, result, this.m_riverside); return new RiverAnnotation(this.description, annotations); } - /** * Create a deep copy of this Facet. + * * @return a deep copy. */ @Override public FloodDurationInfrastructureFacet deepCopy() { - final FloodDurationInfrastructureFacet copy = new FloodDurationInfrastructureFacet(this.name, this.description, this.riverBankKey, this.isW); + final FloodDurationInfrastructureFacet copy = new FloodDurationInfrastructureFacet(this.name, this.isW, this.m_resultIndex, this.m_riverside, + this.index, this.description); copy.set(this); return copy; } } -