diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java @ 3079:8ad8a227d983

Added model classes for SQ calculation; generate fake results and improved the SQRelationGenerator which now draws the outliers. flys-artifacts/trunk@4675 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 15 Jun 2012 12:23:08 +0000
parents 0d3dd8230064
children b31397addf2f
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java	Fri Jun 15 12:16:49 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/SQRelationCalculation.java	Fri Jun 15 12:23:08 2012 +0000
@@ -1,5 +1,8 @@
 package de.intevation.flys.artifacts.model.sq;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import org.apache.log4j.Logger;
 
 import de.intevation.flys.artifacts.model.Calculation;
@@ -27,10 +30,70 @@
         // TODO Insert input params here
     ) {
         logger.info("SQRelationCalculation.buildCalculationResult");
-
         logger.error("Not implemented!");
 
-        return new CalculationResult(new Object[0], this);
+        SQResult[] result = getFakeResult();
+
+        return new CalculationResult(result, this);
+    }
+
+
+    protected SQResult[] getFakeResult() {
+
+        SQ[] measurements = getFakeMeasurements();
+        SQ[] fOutliers    = getFakeOutliers(10);
+        SQ[] tOutliers    = getFakeOutliers(20);
+
+        List<SQ[]> outliers = new ArrayList<SQ[]>();
+        outliers.add(fOutliers);
+        outliers.add(tOutliers);
+
+        return new SQResult[] { new SQResult(null, measurements, outliers) };
+    }
+
+    protected SQ[] getFakeMeasurements() {
+        List<SQ> a = new ArrayList<SQ>();
+
+        a.add(new SQ(11.172500000000001, 1250.0));
+        a.add(new SQ(13.407000000000002, 1500.0));
+        a.add(new SQ(15.641500000000002, 1750.0));
+        a.add(new SQ(17.876000000000005, 2000.0));
+        a.add(new SQ(20.110500000000005, 2250.0));
+        a.add(new SQ(22.345000000000002, 2500.0));
+        a.add(new SQ(24.579500000000003, 2750.0));
+        a.add(new SQ(26.814000000000004, 3000.0));
+        a.add(new SQ(29.048500000000004, 3250.0));
+        a.add(new SQ(31.283000000000005, 3500.0));
+        a.add(new SQ(33.517500000000005, 3750.0));
+        a.add(new SQ(35.75200000000001, 4000.0));
+        a.add(new SQ(37.98650000000001, 4250.0));
+        a.add(new SQ(40.22100000000001, 4500.0));
+        a.add(new SQ(42.45550000000001, 4750.0));
+
+        return (SQ[]) a.toArray(new SQ[a.size()]);
+    }
+
+
+    protected SQ[] getFakeOutliers(int diff) {
+        List<SQ> a = new ArrayList<SQ>();
+
+        a.add(new SQ(11.172500000000001-diff, 1250.0));
+        a.add(new SQ(13.407000000000002+diff, 1500.0));
+        a.add(new SQ(25.641500000000002-diff, 1750.0));
+        a.add(new SQ(17.876000000000005+diff, 2000.0));
+        a.add(new SQ(20.110500000000005-diff, 2250.0));
+        a.add(new SQ(22.345000000000002+diff, 2500.0));
+        a.add(new SQ(24.579500000000003-diff, 2750.0));
+        a.add(new SQ(26.814000000000004+diff, 3000.0));
+        a.add(new SQ(29.048500000000004-diff, 3250.0));
+        a.add(new SQ(31.283000000000005+diff, 3500.0));
+        a.add(new SQ(33.517500000000005-diff, 3750.0));
+        a.add(new SQ(35.75200000000001-diff, 4000.0));
+        a.add(new SQ(37.98650000000001+diff, 4250.0));
+        a.add(new SQ(40.22100000000001+diff, 4500.0));
+        a.add(new SQ(42.45550000000001+diff, 4750.0));
+
+        return (SQ[]) a.toArray(new SQ[a.size()]);
     }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org