comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WWAxisTypes.java @ 2281:08811a335baf

"Bezugslinienverfahren": Do normalisation of reference curves. flys-artifacts/trunk@3943 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 06 Feb 2012 17:40:36 +0000
parents 08bb95e1fc41
children b56e8613ce0d
comparison
equal deleted inserted replaced
2280:ba7ecb20a344 2281:08811a335baf
1 package de.intevation.flys.artifacts.model; 1 package de.intevation.flys.artifacts.model;
2 2
3 import de.intevation.flys.artifacts.math.Function; 3 import de.intevation.flys.artifacts.math.Function;
4 import de.intevation.flys.artifacts.math.Identity; 4 import de.intevation.flys.artifacts.math.Identity;
5 import de.intevation.flys.artifacts.math.LinearFilterFunction; 5 import de.intevation.flys.artifacts.math.LinearFunction;
6 6
7 public class WWAxisTypes 7 public class WWAxisTypes
8 { 8 {
9 protected boolean inCm1; 9 protected boolean inCm1;
10 protected boolean inCm2; 10 protected boolean inCm2;
42 public WW.ApplyFunctionIterator transform(WW ww) { 42 public WW.ApplyFunctionIterator transform(WW ww) {
43 return transform(ww, false); 43 return transform(ww, false);
44 } 44 }
45 45
46 public WW.ApplyFunctionIterator transform(WW ww, boolean normalized) { 46 public WW.ApplyFunctionIterator transform(WW ww, boolean normalized) {
47 // TODO: Do normalising.
48 47
49 Function function1 = inCm1 48 Function function1;
50 ? new LinearFilterFunction(100d, -ww.getStartDatum()) 49 Function function2;
51 : Identity.IDENTITY;
52 50
53 Function function2 = inCm2 51 if (!normalized) {
54 ? new LinearFilterFunction(100d, -ww.getEndDatum()) 52 function1 = inCm1
55 : Identity.IDENTITY; 53 ? new LinearFunction(100d, -ww.getStartDatum())
54 : Identity.IDENTITY;
55
56 function2 = inCm2
57 ? new LinearFunction(100d, -ww.getEndDatum())
58 : Identity.IDENTITY;
59 }
60 else {
61 double minW1 = ww.minWs();
62 double minW2 = ww.minWs2();
63 double scale1 = inCm1 ? 100d : 1d;
64 double scale2 = inCm2 ? 100d : 1d;
65 function1 = new LinearFunction(scale1, -minW1);
66 function2 = new LinearFunction(scale1, -minW2);
67 }
68
56 69
57 return new WW.ApplyFunctionIterator(ww, function1, function2); 70 return new WW.ApplyFunctionIterator(ww, function1, function2);
58 } 71 }
59 } 72 }
60 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : 73 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org