annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedDiffEpochFacet.java @ 4672:12e3da5724e6

Added new facets for filtered bed height diffs to have filtered and raw data.
author Raimund Renkert <rrenkert@intevation.de>
date Thu, 13 Dec 2012 17:18:53 +0100
parents e3f28be45103
children 756aba0d2a7a
rev   line source
3898
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts.model.minfo;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 import org.apache.log4j.Logger;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 import de.intevation.artifactdatabase.state.Facet;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6 import de.intevation.artifacts.Artifact;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 import de.intevation.artifacts.CallContext;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8 import de.intevation.flys.artifacts.FLYSArtifact;
4639
79827cd334d5 Use moving average algorithm to calculate average values depending on the zoom
Raimund Renkert <rrenkert@intevation.de>
parents: 3898
diff changeset
9 import de.intevation.flys.artifacts.access.RiverAccess;
79827cd334d5 Use moving average algorithm to calculate average values depending on the zoom
Raimund Renkert <rrenkert@intevation.de>
parents: 3898
diff changeset
10 import de.intevation.flys.artifacts.context.FLYSContext;
3898
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 import de.intevation.flys.artifacts.model.CalculationResult;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 import de.intevation.flys.artifacts.model.DataFacet;
4640
e3f28be45103 Fixed imports.
Raimund Renkert <rrenkert@intevation.de>
parents: 4639
diff changeset
13 import de.intevation.flys.artifacts.math.MovingAverage;
4639
79827cd334d5 Use moving average algorithm to calculate average values depending on the zoom
Raimund Renkert <rrenkert@intevation.de>
parents: 3898
diff changeset
14 import de.intevation.flys.artifacts.model.ZoomScale;
3898
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15 import de.intevation.flys.artifacts.states.DefaultState.ComputeType;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 public class BedDiffEpochFacet
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19 extends DataFacet
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 {
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21 private static Logger logger = Logger.getLogger(BedDensityFacet.class);
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23 public BedDiffEpochFacet() {
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 }
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 public BedDiffEpochFacet(int idx, String name, String description,
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 ComputeType type, String stateId, String hash) {
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28 super(idx, name, description, type, hash, stateId);
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29 }
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
30
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
31 public Object getData(Artifact artifact, CallContext context) {
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
32 logger.debug("Get data for bed density at index: " + index);
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
33
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34 FLYSArtifact flys = (FLYSArtifact) artifact;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 CalculationResult res = (CalculationResult) flys.compute(context, hash,
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 stateId, type, false);
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38
4639
79827cd334d5 Use moving average algorithm to calculate average values depending on the zoom
Raimund Renkert <rrenkert@intevation.de>
parents: 3898
diff changeset
39 BedDiffEpochResult[] data =
4672
12e3da5724e6 Added new facets for filtered bed height diffs to have filtered and raw data.
Raimund Renkert <rrenkert@intevation.de>
parents: 4640
diff changeset
40 (BedDiffEpochResult[]) res.getData();
4639
79827cd334d5 Use moving average algorithm to calculate average values depending on the zoom
Raimund Renkert <rrenkert@intevation.de>
parents: 3898
diff changeset
41
3898
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
42 return data != null && data.length > index ? data[index] : null;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 }
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
45 /** Copy deeply. */
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 @Override
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 public Facet deepCopy() {
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48 BedDiffEpochFacet copy = new BedDiffEpochFacet();
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 copy.set(this);
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50 copy.type = type;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 copy.hash = hash;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
52 copy.stateId = stateId;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53 return copy;
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
54 }
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
55 }
95d699c769fb Bedheight difference calculation has chart outpus now.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
56 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org