Mercurial > dive4elements > river
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 :