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