# HG changeset patch # User Raimund Renkert # Date 1358936135 -3600 # Node ID ac9a3d9576b4cf608a38bf29b9a9664272fc37ba # Parent 9e25c75234858f7a267ba57b84c43982dfead94e# Parent 01e82da3f9194bda064fc23649f569c710f0f31b merged. diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/doc/conf/artifacts/minfo.xml --- a/flys-artifacts/doc/conf/artifacts/minfo.xml Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/doc/conf/artifacts/minfo.xml Wed Jan 23 11:15:35 2013 +0100 @@ -2,7 +2,7 @@ - + @@ -11,7 +11,7 @@ - + @@ -46,20 +46,20 @@ - + - + - + - + @@ -91,25 +91,27 @@ - + - + - + - + - + @@ -138,7 +140,7 @@ - + @@ -165,7 +167,7 @@ - + @@ -187,11 +189,11 @@ - + - + @@ -244,7 +246,8 @@ - + @@ -335,7 +338,7 @@ - + @@ -364,7 +367,7 @@ - + @@ -373,7 +376,7 @@ - + @@ -396,16 +399,19 @@ - + - + - + @@ -424,7 +430,8 @@ - + diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/doc/conf/artifacts/winfo.xml --- a/flys-artifacts/doc/conf/artifacts/winfo.xml Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/doc/conf/artifacts/winfo.xml Wed Jan 23 11:15:35 2013 +0100 @@ -2,16 +2,16 @@ - + - + - + @@ -74,7 +74,7 @@ - + - + - + @@ -120,7 +120,7 @@ - + @@ -187,7 +187,7 @@ - + @@ -198,17 +198,17 @@ + state="de.intevation.flys.artifacts.states.WQAdapted" helpText="help.state.winfo.wq_adapted"> - + - + @@ -217,7 +217,7 @@ - + @@ -226,7 +226,7 @@ - + @@ -256,7 +256,7 @@ - + @@ -280,7 +280,7 @@ - + @@ -307,7 +307,7 @@ - + @@ -352,7 +352,7 @@ - + @@ -396,7 +396,7 @@ - + @@ -445,7 +445,7 @@ - + @@ -454,7 +454,7 @@ - + @@ -463,7 +463,7 @@ - + @@ -472,7 +472,7 @@ - + @@ -481,7 +481,7 @@ - + @@ -492,7 +492,7 @@ - + @@ -502,7 +502,7 @@ - + @@ -536,7 +536,7 @@ - + @@ -545,7 +545,7 @@ - + @@ -554,7 +554,7 @@ - + @@ -564,7 +564,7 @@ - + @@ -598,23 +598,26 @@ + state="de.intevation.flys.artifacts.states.fixation.FunctionSelect" + helpText="help.state.winfo.function_select"> + state="de.intevation.flys.artifacts.states.extreme.PercentInput" + helpText="help.state.winfo.extreme.percent"> + state="de.intevation.flys.artifacts.states.extreme.ExtremeQInput" + helpText="help.state.winfo.extreme.qinput"> - + diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedHeightAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -2,6 +2,8 @@ import java.util.List; +import de.intevation.artifacts.CallContext; + import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.model.minfo.BedHeight; import de.intevation.flys.artifacts.model.minfo.BedHeightFactory; @@ -14,38 +16,31 @@ import org.apache.log4j.Logger; -public class BedHeightAccess extends Access { +public class BedHeightAccess +extends RangeAccess +{ private static final Logger logger = Logger.getLogger(BedHeightAccess.class); private int[] singleIDs; private int[] epochIDs; - private Double lowerKM; - private Double upperKM; - private String time; - public BedHeightAccess(FLYSArtifact artifact) { - super(artifact); + public BedHeightAccess(FLYSArtifact artifact, CallContext context) { + super(artifact, context); } public Double getLowerKM() { - if (lowerKM == null) { - lowerKM = getDouble("ld_from"); - } - - return lowerKM; + // TODO update callers + return getFrom(); } public Double getUpperKM() { - if (upperKM == null) { - upperKM = getDouble("ld_to"); - } - - return upperKM; + // TODO update callers + return getTo(); } @@ -150,8 +145,8 @@ BedHeightSingle single = BedHeightSingle.getBedHeightSingleById( artifact.getDataAsInteger("height_id")); return BedHeightSingleValue.getBedHeightSingleValues(single, - artifact.getDataAsDouble("ld_from"), - artifact.getDataAsDouble("ld_to")); + getFrom(), + getTo()); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -6,37 +6,24 @@ import org.apache.log4j.Logger; +import de.intevation.artifacts.CallContext; + import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.model.DateRange; -public class BedQualityAccess extends RiverAccess { +public class BedQualityAccess extends RangeAccess { private static final Logger logger = Logger .getLogger(BedQualityAccess.class); - private Double from; - private Double to; private List bedDiameter; private List bedloadDiameter; private List ranges; - public BedQualityAccess(FLYSArtifact artifact) { - super(artifact); - } - public double getFrom() { - if (from == null) { - from = getDouble("ld_from"); - } - return from.doubleValue(); - } - - public double getTo() { - if (to == null) { - to = getDouble("ld_to"); - } - return to.doubleValue(); + public BedQualityAccess(FLYSArtifact artifact, CallContext context) { + super(artifact, context); } public List getDateRanges() { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/ExtremeAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/ExtremeAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/ExtremeAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,5 +1,7 @@ package de.intevation.flys.artifacts.access; +import de.intevation.artifacts.CallContext; + import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.model.RangeWithValues; @@ -13,15 +15,11 @@ /** Access data used for extreme value analysis. */ public class ExtremeAccess -extends RiverAccess +extends RangeAccess { /** Our private logger. */ private static Logger logger = Logger.getLogger(ExtremeAccess.class); - protected Double from; - protected Double to; - protected Double step; - protected Long start; protected Long end; @@ -32,57 +30,8 @@ protected List ranges; - public ExtremeAccess() { - } - - - public ExtremeAccess(FLYSArtifact artifact) { - super(artifact); - } - - - /** From (km) for calculation. */ - public Double getFrom() { - - if (from == null) { - from = getDouble("ld_from"); - } - - if (logger.isDebugEnabled()) { - logger.debug("from: '" + from + "'"); - } - - return from; - } - - - /** To (km) for calculation. */ - public Double getTo() { - - if (to == null) { - to = getDouble("ld_to"); - } - - if (logger.isDebugEnabled()) { - logger.debug("to: '" + to + "'"); - } - - return to; - } - - - /** Step width for calculation. */ - public Double getStep() { - - if (step == null) { - step = getDouble("ld_step"); - } - - if (logger.isDebugEnabled()) { - logger.debug("step: '" + step + "'"); - } - - return step; + public ExtremeAccess(FLYSArtifact artifact, CallContext context) { + super(artifact, context); } diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/FlowVelocityAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,20 +1,20 @@ package de.intevation.flys.artifacts.access; +import de.intevation.artifacts.CallContext; + import de.intevation.flys.artifacts.FLYSArtifact; /** Access to data that deals with flow velocity stuff. */ -public class FlowVelocityAccess extends RiverAccess { +public class FlowVelocityAccess +extends RangeAccess +{ private int[] mainChannels; private int[] totalChannels; - private Double lowerKM; - private Double upperKM; - - - public FlowVelocityAccess(FLYSArtifact artifact) { - super(artifact); + public FlowVelocityAccess(FLYSArtifact artifact, CallContext context) { + super(artifact, context); } @@ -37,20 +37,14 @@ public Double getLowerKM() { - if (lowerKM == null) { - lowerKM = getDouble("ld_from"); - } - - return lowerKM; + // TODO update callers to getFrom + return getFrom(); } public Double getUpperKM() { - if (upperKM == null) { - upperKM = getDouble("ld_to"); - } - - return upperKM; + // TODO update callers to getTo + return getTo(); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/RangeAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/RangeAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/RangeAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -15,6 +15,12 @@ private CallContext context; + Double from; + + Double to; + + Double step; + public RangeAccess(FLYSArtifact artifact, CallContext context) { super(artifact); @@ -22,6 +28,49 @@ } + /** Return ld_from data (in km). */ + public double getFrom() { + if (from == null) { + from = getDouble("ld_from"); + } + + if (logger.isDebugEnabled()) { + logger.debug("from: '" + from + "'"); + } + + return from.doubleValue(); + } + + + /** Return ld_to data (in km). */ + public double getTo() { + if (to == null) { + to = getDouble("ld_to"); + } + + if (logger.isDebugEnabled()) { + logger.debug("to: '" + to + "'"); + } + + return to.doubleValue(); + } + + + /** Step width for calculation. */ + public Double getStep() { + + if (step == null) { + step = getDouble("ld_step"); + } + + if (logger.isDebugEnabled()) { + logger.debug("step: '" + step + "'"); + } + + return step; + } + + /** * Get min and max kilometer, independent of parametization * (ld_from/to vs ld_locations). diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/SedimentLoadAccess.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/SedimentLoadAccess.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/SedimentLoadAccess.java Wed Jan 23 11:15:35 2013 +0100 @@ -4,41 +4,34 @@ import org.apache.log4j.Logger; +import de.intevation.artifacts.CallContext; + import de.intevation.flys.artifacts.FLYSArtifact; public class SedimentLoadAccess -extends RiverAccess +extends RangeAccess { private static final Logger logger = Logger.getLogger(BedHeightAccess.class); private int[] singleIDs; private int[] epochIDs; - private Double lowerKM; - private Double upperKM; - private String time; private String unit; - public SedimentLoadAccess(FLYSArtifact artifact) { - super(artifact); + public SedimentLoadAccess(FLYSArtifact artifact, CallContext context) { + super(artifact, context); } public Double getLowerKM() { - if (lowerKM == null) { - lowerKM = getDouble("ld_from"); - } - - return lowerKM; + // TODO update callers + return getFrom(); } public Double getUpperKM() { - if (upperKM == null) { - upperKM = getDouble("ld_to"); - } - - return upperKM; + // TODO update callers + return getTo(); } public String getYearEpoch() { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/math/StdDevOutlier.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/math/StdDevOutlier.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/math/StdDevOutlier.java Wed Jan 23 11:15:35 2013 +0100 @@ -21,7 +21,7 @@ public static Integer findOutlier( List values, - double factor, + double factor, double [] stdDevResult ) { boolean debug = log.isDebugEnabled(); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation4.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation4.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Calculation4.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,19 +1,20 @@ package de.intevation.flys.artifacts.model; +import de.intevation.flys.artifacts.access.Calculation4Access; + import de.intevation.flys.artifacts.math.BackJumpCorrector; import de.intevation.flys.artifacts.math.Function; import de.intevation.flys.artifacts.math.Identity; import de.intevation.flys.artifacts.math.Linear; import de.intevation.flys.artifacts.model.RiverFactory; + import de.intevation.flys.artifacts.model.WstValueTable.QPosition; import de.intevation.flys.model.River; import de.intevation.flys.utils.DoubleUtil; -import de.intevation.flys.artifacts.access.Calculation4Access; - import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -273,12 +274,20 @@ } // Generate the "Umhuellende". - results = generateInfolding(table, results, from, to, step); + ConstantWQKms [] infoldings = + generateInfolding(table, results, from, to, step); - return new CalculationResult(results, this); + // TODO: Use qkms in a new result type. + WQKms [] newResults = new WQKms[results.length + infoldings.length]; + System.arraycopy( + results, 0, newResults, 0, results.length); + System.arraycopy( + infoldings, 0, newResults, results.length, infoldings.length); + + return new CalculationResult(newResults, this); } - protected WQKms [] generateInfolding( + protected ConstantWQKms [] generateInfolding( WstValueTable wst, WQKms [] results, double from, @@ -290,43 +299,42 @@ InfoldingColumns ic = new InfoldingColumns(columns); ic.markInfoldingColumns(results); - List infoldings = new ArrayList(); + List infoldings = new ArrayList(); boolean [] infoldingColumns = ic.getInfoldingColumns(); + + double [] kms = null; + double [] ws = null; + for (int i = 0; i < infoldingColumns.length; ++i) { if (!infoldingColumns[i]) { continue; } - double q = columns[i].getQRangeTree().findQ(from); - if (Double.isNaN(q)) { - addProblem(from, "cannot.find.q"); - continue; + + if (kms == null) { + kms = DoubleUtil.explode(from, to, step); + ws = new double[kms.length]; } - double [] kms = DoubleUtil.explode(from, to, step); - double [] oqs = new double[kms.length]; - double [] ows = new double[kms.length]; - boolean success = - wst.interpolate(q, from, kms, ows, oqs, this) != null; - if (success) { - // TODO: generate a better name. I18N. - String name = "Umh\u00fcllende " + columns[i].getName(); - WQKms wqkms = new WQKms(kms, oqs, ows, name); - infoldings.add(wqkms); + QRangeTree.QuickQFinder qf = + columns[i].getQRangeTree().new QuickQFinder(); + + int numProblemsBefore = numProblems(); + double [] qs = qf.findQs(kms, this); + + // TODO: i18n + String name = "Umh\u00fcllende " + columns[i].getName(); + + ConstantWQKms infolding = new ConstantWQKms(kms, qs, ws, name); + + if (numProblems() > numProblemsBefore) { + infolding.removeNaNs(); } + + infoldings.add(infolding); } - int N = infoldings.size(); - if (N > 0) { - WQKms [] newResults = new WQKms[results.length + N]; - System.arraycopy(results, 0, newResults, 0, results.length); - for (int i = 0; i < N; ++i) { - newResults[i+results.length] = infoldings.get(i); - } - results = newResults; - } - - return results; + return infoldings.toArray(new ConstantWQKms[infoldings.size()]); } protected String createName(int index) { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/ConstantWQKms.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/ConstantWQKms.java Wed Jan 23 11:15:35 2013 +0100 @@ -0,0 +1,30 @@ +package de.intevation.flys.artifacts.model; + +public class ConstantWQKms +extends WQKms +{ + public ConstantWQKms() { + this(""); + } + + public ConstantWQKms(String name) { + super(name); + } + + public ConstantWQKms(int capacity) { + this(capacity, ""); + } + + public ConstantWQKms(int capacity, String name) { + super(capacity, name); + } + + public ConstantWQKms(double [] kms, double [] qs, double [] ws) { + this(kms, qs, ws, ""); + } + + public ConstantWQKms(double [] kms, double [] qs, double [] ws, String name) { + super(kms, qs, ws, name); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/InfoldingColumns.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/InfoldingColumns.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/InfoldingColumns.java Wed Jan 23 11:15:35 2013 +0100 @@ -31,18 +31,18 @@ return infoldingColumns; } - public void markInfoldingColumns(WQKms [] wqkms) { - for (WQKms wqk: wqkms) { - markInfoldingColumns(wqk); + public void markInfoldingColumns(QKms [] qkms) { + for (QKms qk: qkms) { + markInfoldingColumns(qk); } } - public void markInfoldingColumns(WQKms wqkms) { - int N = wqkms.size(); + public void markInfoldingColumns(QKms qkms) { + int N = qkms.size(); int C = qFinders.length-1; for (int i = 0; i < N; ++i) { - double km = wqkms.getKm(i); - double q = wqkms.getQ(i); + double km = qkms.getKm(i); + double q = qkms.getQ(i); double above = Double.MAX_VALUE; double below = -Double.MAX_VALUE; int aboveIdx = -1; diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Parameters.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Parameters.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Parameters.java Wed Jan 23 11:15:35 2013 +0100 @@ -2,6 +2,8 @@ import de.intevation.flys.artifacts.math.Linear; +import de.intevation.flys.utils.DoubleUtil; + import gnu.trove.TDoubleArrayList; import java.io.Serializable; @@ -124,7 +126,7 @@ } public void removeNaNs() { - W.removeNaNs(columns); + DoubleUtil.removeNaNs(columns); } public int [] columnIndices(String [] columns) { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QKms.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QKms.java Wed Jan 23 11:15:35 2013 +0100 @@ -0,0 +1,18 @@ +package de.intevation.flys.artifacts.model; + +import gnu.trove.TDoubleArrayList; + +public interface QKms +extends NamedObject +{ + int size(); + + double getKm(int index); + + double getQ(int index); + + TDoubleArrayList allKms(); + + TDoubleArrayList allQs(); +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QKmsImpl.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QKmsImpl.java Wed Jan 23 11:15:35 2013 +0100 @@ -0,0 +1,82 @@ +package de.intevation.flys.artifacts.model; + +import gnu.trove.TDoubleArrayList; + +import de.intevation.flys.utils.DoubleUtil; + +public class QKmsImpl +extends NamedObjectImpl +implements QKms +{ + protected TDoubleArrayList kms; + protected TDoubleArrayList qs; + + public QKmsImpl() { + super(""); + kms = new TDoubleArrayList(); + qs = new TDoubleArrayList(); + } + + public QKmsImpl(String name) { + super(name); + kms = new TDoubleArrayList(); + qs = new TDoubleArrayList(); + } + + + public QKmsImpl(int capacity) { + super(""); + kms = new TDoubleArrayList(capacity); + qs = new TDoubleArrayList(capacity); + } + + + public QKmsImpl(TDoubleArrayList kms, TDoubleArrayList qs) { + this(kms, qs, ""); + } + + public QKmsImpl( + TDoubleArrayList kms, + TDoubleArrayList qs, + String name + ) { + super(name); + this.kms = kms; + this.qs = qs; + } + + public void add(double km, double q) { + kms.add(km); + qs .add(q); + } + + @Override + public double getQ(int index) { + return qs.getQuick(index); + } + + + @Override + public double getKm(int index) { + return kms.getQuick(index); + } + + @Override + public int size() { + return kms.size(); + } + + @Override + public TDoubleArrayList allKms() { + return kms; + } + + @Override + public TDoubleArrayList allQs() { + return qs; + } + + public void removeNaNs() { + DoubleUtil.removeNaNs(new TDoubleArrayList [] { kms, qs }); + } +} diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/QRangeTree.java Wed Jan 23 11:15:35 2013 +0100 @@ -145,6 +145,23 @@ last = QRangeTree.this.findNode(pos); return last != null ? last.q : Double.NaN; } + + public double [] findQs(double [] kms, Calculation report) { + return findQs(kms, new double[kms.length], report); + } + + public double [] findQs( + double [] kms, + double [] qs, + Calculation report + ) { + for (int i = 0; i < kms.length; ++i) { + if (Double.isNaN(qs[i] = findQ(kms[i]))) { + report.addProblem(kms[i], "cannot.find.q"); + } + } + return qs; + } } // class QuickQFinder protected Node root; diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/W.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/W.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/W.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,6 +1,7 @@ package de.intevation.flys.artifacts.model; import de.intevation.flys.utils.DataUtil; +import de.intevation.flys.utils.DoubleUtil; import gnu.trove.TDoubleArrayList; @@ -60,34 +61,8 @@ return ws.min(); } - public static void removeNaNs(TDoubleArrayList [] arrays) { - - int dest = 0; - - int A = arrays.length; - int N = arrays[0].size(); - - OUTER: for (int i = 0; i < N; ++i) { - for (int j = 0; j < A; ++j) { - TDoubleArrayList a = arrays[j]; - double v = a.getQuick(i); - if (Double.isNaN(v)) { - continue OUTER; - } - a.setQuick(dest, v); - } - ++dest; - } - - if (dest < N) { - for (int i = 0; i < A; ++i) { - arrays[i].remove(dest, N-dest); - } - } - } - public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws }); } public boolean guessWaterIncreasing() { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WKms.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WKms.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WKms.java Wed Jan 23 11:15:35 2013 +0100 @@ -15,6 +15,6 @@ TDoubleArrayList allWs(); - public boolean guessWaterIncreasing(); + boolean guessWaterIncreasing(); } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,10 +1,12 @@ package de.intevation.flys.artifacts.model; +import de.intevation.flys.utils.DoubleUtil; + +import gnu.trove.TDoubleArrayList; + import java.util.regex.Matcher; import java.util.regex.Pattern; -import gnu.trove.TDoubleArrayList; - import org.apache.log4j.Logger; public class WQ @@ -96,7 +98,7 @@ @Override public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws, qs }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws, qs }); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQCKms.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQCKms.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQCKms.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,5 +1,7 @@ package de.intevation.flys.artifacts.model; +import de.intevation.flys.utils.DoubleUtil; + import gnu.trove.TDoubleArrayList; /** @@ -32,7 +34,7 @@ @Override public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws, qs, cws, kms }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws, qs, cws, kms }); } /** diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQKms.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQKms.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQKms.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,5 +1,7 @@ package de.intevation.flys.artifacts.model; +import de.intevation.flys.utils.DoubleUtil; + import gnu.trove.TDoubleArrayList; import org.apache.log4j.Logger; @@ -13,7 +15,7 @@ */ public class WQKms extends WQ -implements WKms +implements WKms, QKms { private static Logger logger = Logger.getLogger(WQKms.class); @@ -54,7 +56,7 @@ @Override public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws, qs, kms }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws, qs, kms }); } /** @@ -105,6 +107,11 @@ return ws; } + @Override + public TDoubleArrayList allQs() { + return qs; + } + public double[] getKms() { return kms.toNativeArray(); } diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WW.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WW.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WW.java Wed Jan 23 11:15:35 2013 +0100 @@ -3,6 +3,8 @@ import de.intevation.flys.artifacts.math.Function; import de.intevation.flys.artifacts.math.Identity; +import de.intevation.flys.utils.DoubleUtil; + import gnu.trove.TDoubleArrayList; public class WW @@ -175,7 +177,7 @@ @Override public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws, ws2 }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws, ws2 }); } public double minWs2() { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WWQQ.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WWQQ.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WWQQ.java Wed Jan 23 11:15:35 2013 +0100 @@ -2,6 +2,8 @@ import de.intevation.flys.artifacts.math.Identity; +import de.intevation.flys.utils.DoubleUtil; + import gnu.trove.TDoubleArrayList; public class WWQQ @@ -91,7 +93,7 @@ @Override public void removeNaNs() { - removeNaNs(new TDoubleArrayList [] { ws, ws2, qs1, qs2 }); + DoubleUtil.removeNaNs(new TDoubleArrayList [] { ws, ws2, qs1, qs2 }); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/extreme/ExtremeCurveFacet.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/extreme/ExtremeCurveFacet.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/extreme/ExtremeCurveFacet.java Wed Jan 23 11:15:35 2013 +0100 @@ -87,7 +87,7 @@ logger.debug("A curve at km = " + currentKm); Curve c = curveEntry.getValue(); // Find segment in which the curr. km is located. - ExtremeAccess access = new ExtremeAccess(flys); + ExtremeAccess access = new ExtremeAccess(flys, context); double[] ds = access.getValuesForRange(currentKm); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedHeightFacet.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedHeightFacet.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedHeightFacet.java Wed Jan 23 11:15:35 2013 +0100 @@ -30,7 +30,7 @@ */ @Override public Object getData(Artifact artifact, CallContext context) { - BedHeightAccess access = new BedHeightAccess((FLYSArtifact)artifact); + BedHeightAccess access = new BedHeightAccess((FLYSArtifact)artifact, context); if (type.equals("singlevalues")) { return access.getSingleValues(); } diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/MeasurementFactory.java Wed Jan 23 11:15:35 2013 +0100 @@ -1,7 +1,6 @@ package de.intevation.flys.artifacts.model.sq; import java.util.ArrayList; -import java.util.Arrays; import java.util.Calendar; import java.util.Collections; import java.util.Date; @@ -53,7 +52,7 @@ "g.UFERABLINKS AS UFERABLINKS," + "m.TSCHWEB AS TSCHWEB," + "m.TSAND AS TSAND," + - "gp.GTRIEB_F AS GTRIEB," + + "gp.GTRIEB_F AS GTRIEB," + "m.TGESCHIEBE AS TGESCHIEBE," + "si.SIEB01 AS SIEB01, si.SIEB02 AS SIEB02," + "si.SIEB03 AS SIEB03, si.SIEB04 AS SIEB04," + diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/Outlier.java Wed Jan 23 11:15:35 2013 +0100 @@ -88,7 +88,7 @@ SQ outlier = data.remove(ndx.intValue()); if (debug) { log.debug("stdDev: " + stdDev[0]); - log.debug("removed " + ndx + + log.debug("removed " + ndx + "; S: " + outlier.getS() + " Q: " + outlier.getQ()); } callback.iterationFinished(stdDev[0], outlier, data); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DischargeLongitudinalSection.java Wed Jan 23 11:15:35 2013 +0100 @@ -11,6 +11,7 @@ import de.intevation.flys.artifacts.model.Calculation4; import de.intevation.flys.artifacts.model.CalculationResult; +import de.intevation.flys.artifacts.model.ConstantWQKms; import de.intevation.flys.artifacts.model.CrossSectionWaterLineFacet; import de.intevation.flys.artifacts.model.DataFacet; import de.intevation.flys.artifacts.model.EmptyFacet; @@ -70,16 +71,22 @@ nameQ = "Q(" + nameW + ")"; } - Facet w = new WaterlevelFacet( - i, DISCHARGE_LONGITUDINAL_W, nameW); + // Do not generate Waterlevel/Waterline facets + // for Q only curves. + if (!(wqkms[i] instanceof ConstantWQKms)) { + + Facet w = new WaterlevelFacet( + i, DISCHARGE_LONGITUDINAL_W, nameW); + + Facet s = new CrossSectionWaterLineFacet(i, nameW); + + facets.add(s); + facets.add(w); + } Facet q = new WaterlevelFacet( i, DISCHARGE_LONGITUDINAL_Q, nameQ); - Facet s = new CrossSectionWaterLineFacet(i, nameW); - - facets.add(s); - facets.add(w); facets.add(q); if (wqkms[i] instanceof WQCKms) { diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FlowVelocityState.java Wed Jan 23 11:15:35 2013 +0100 @@ -62,7 +62,7 @@ List newFacets = new ArrayList(); - FlowVelocityAccess access = new FlowVelocityAccess(artifact); + FlowVelocityAccess access = new FlowVelocityAccess(artifact, context); CalculationResult res = old instanceof CalculationResult ? (CalculationResult) old diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/MiddleBedHeight.java Wed Jan 23 11:15:35 2013 +0100 @@ -38,7 +38,7 @@ List newFacets = new ArrayList(); - BedHeightAccess access = new BedHeightAccess(artifact); + BedHeightAccess access = new BedHeightAccess(artifact, context); CalculationResult res = old instanceof CalculationResult ? (CalculationResult) old diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeCompute.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeCompute.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeCompute.java Wed Jan 23 11:15:35 2013 +0100 @@ -53,7 +53,7 @@ CalculationResult res; - ExtremeAccess access = new ExtremeAccess(artifact); + ExtremeAccess access = new ExtremeAccess(artifact, context); if (old instanceof CalculationResult) { res = (CalculationResult)old; diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeQInput.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeQInput.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/extreme/ExtremeQInput.java Wed Jan 23 11:15:35 2013 +0100 @@ -78,7 +78,7 @@ FLYSArtifact flysArtifact = (FLYSArtifact) artifact; - ExtremeAccess access = new ExtremeAccess(flysArtifact); + ExtremeAccess access = new ExtremeAccess(flysArtifact, context); River river = RiverFactory.getRiver(access.getRiver()); WstValueTable wstValueTable = WstValueTableFactory.getTable(river); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Wed Jan 23 11:15:35 2013 +0100 @@ -54,7 +54,7 @@ List newFacets = new ArrayList(); - BedQualityAccess access = new BedQualityAccess(artifact); + BedQualityAccess access = new BedQualityAccess(artifact, context); CalculationResult res = old instanceof CalculationResult ? (CalculationResult) old : new BedQualityCalculation().calculate(access); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/DifferenceSelect.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/DifferenceSelect.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/DifferenceSelect.java Wed Jan 23 11:15:35 2013 +0100 @@ -55,7 +55,7 @@ CallContext context) { Element[] elements = new Element[1]; - BedHeightAccess bha = new BedHeightAccess((FLYSArtifact)artifact); + BedHeightAccess bha = new BedHeightAccess((FLYSArtifact)artifact, context); String time = bha.getYearEpoch(); elements[0] = createItem( ec, diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/SedimentLoadCalculate.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/SedimentLoadCalculate.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/SedimentLoadCalculate.java Wed Jan 23 11:15:35 2013 +0100 @@ -47,7 +47,7 @@ List newFacets = new ArrayList(); - SedimentLoadAccess access = new SedimentLoadAccess(artifact); + SedimentLoadAccess access = new SedimentLoadAccess(artifact, context); CalculationResult res = old instanceof CalculationResult ? (CalculationResult) old : new SedimentLoadCalculation().calculate(access); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/exports/FlowVelocityGenerator.java --- a/flys-artifacts/src/main/java/de/intevation/flys/exports/FlowVelocityGenerator.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/FlowVelocityGenerator.java Wed Jan 23 11:15:35 2013 +0100 @@ -219,13 +219,13 @@ } else if (getXBounds(0) == null && getDomainAxisRange() == null) { FLYSArtifact artifact = (FLYSArtifact)artifactAndFacet.getArtifact(); - FlowVelocityAccess access = new FlowVelocityAccess(artifact); + FlowVelocityAccess access = new FlowVelocityAccess(artifact, context); context.putContextValue("startkm", access.getLowerKM()); context.putContextValue("endkm", access.getUpperKM()); } else if (getXBounds(0) == null && getDomainAxisRange() != null){ FLYSArtifact artifact = (FLYSArtifact)artifactAndFacet.getArtifact(); - FlowVelocityAccess access = new FlowVelocityAccess(artifact); + FlowVelocityAccess access = new FlowVelocityAccess(artifact, context); Bounds b = new DoubleBounds(access.getLowerKM(), access.getUpperKM()); Bounds bounds = calculateZoom(b, getDomainAxisRange()); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/exports/WaterlevelExporter.java --- a/flys-artifacts/src/main/java/de/intevation/flys/exports/WaterlevelExporter.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/WaterlevelExporter.java Wed Jan 23 11:15:35 2013 +0100 @@ -19,6 +19,8 @@ import au.com.bytecode.opencsv.CSVWriter; +import de.intevation.flys.artifacts.model.ConstantWQKms; + import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; @@ -43,7 +45,6 @@ import de.intevation.flys.utils.FLYSUtils.WQ_MODE; import de.intevation.flys.utils.Formatter; - /** * Generates different output formats (wst, csv, pdf) of data that resulted from * a waterlevel computation. @@ -449,6 +450,11 @@ ) { logger.debug("WaterlevelExporter.wQKms2CSV"); + // Skip constant data. + if (wqkms instanceof ConstantWQKms) { + return; + } + NumberFormat kmf = getKmFormatter(); NumberFormat wf = getWFormatter(); NumberFormat qf = getQFormatter(); @@ -579,6 +585,9 @@ * @param wqkms The new WST column. */ protected void addWSTColumn(WstWriter writer, WQKms wqkms) { + if (wqkms instanceof ConstantWQKms) { + return; + } if (master instanceof WINFOArtifact) { writer.addColumn(getColumnTitle((WINFOArtifact) master, wqkms)); } @@ -613,8 +622,7 @@ JasperExportManager.exportReportToPdfStream(print, out); } catch(JRException je) { - logger.warn("Error generating PDF Report!"); - je.printStackTrace(); + logger.warn("Error generating PDF Report!", je); } } @@ -665,6 +673,11 @@ { logger.debug("WaterlevelExporter.addWKmsData"); + // Skip constant data. + if (wqkms instanceof ConstantWQKms) { + return; + } + NumberFormat kmf = getKmFormatter(); NumberFormat wf = getWFormatter(); NumberFormat qf = getQFormatter(); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/BedDifferenceEpochGenerator.java --- a/flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/BedDifferenceEpochGenerator.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/BedDifferenceEpochGenerator.java Wed Jan 23 11:15:35 2013 +0100 @@ -98,13 +98,13 @@ } else if (getXBounds(0) == null && getDomainAxisRange() == null) { FLYSArtifact artifact = (FLYSArtifact)bundle.getArtifact(); - FlowVelocityAccess access = new FlowVelocityAccess(artifact); + FlowVelocityAccess access = new FlowVelocityAccess(artifact, context); context.putContextValue("startkm", access.getLowerKM()); context.putContextValue("endkm", access.getUpperKM()); } else if (getXBounds(0) == null && getDomainAxisRange() != null){ FLYSArtifact artifact = (FLYSArtifact)bundle.getArtifact(); - FlowVelocityAccess access = new FlowVelocityAccess(artifact); + FlowVelocityAccess access = new FlowVelocityAccess(artifact, context); Bounds b = new DoubleBounds(access.getLowerKM(), access.getUpperKM()); Bounds bounds = calculateZoom(b, getDomainAxisRange()); diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/SedimentLoadLSGenerator.java --- a/flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/SedimentLoadLSGenerator.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/minfo/SedimentLoadLSGenerator.java Wed Jan 23 11:15:35 2013 +0100 @@ -166,7 +166,7 @@ protected String getDefaultYAxisLabel(int pos) { String label = "default"; if (pos == YAXIS.L.idx) { - SedimentLoadAccess access = new SedimentLoadAccess(artifact); + SedimentLoadAccess access = new SedimentLoadAccess(artifact, context); if (access.getUnit().equals("m3_per_a")) { label = msg(I18N_YAXIS_LABEL_2, I18N_YAXIS_LABEL_DEFAULT_2); } diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/java/de/intevation/flys/utils/DoubleUtil.java --- a/flys-artifacts/src/main/java/de/intevation/flys/utils/DoubleUtil.java Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/utils/DoubleUtil.java Wed Jan 23 11:15:35 2013 +0100 @@ -209,5 +209,31 @@ } return max; } + + public static void removeNaNs(TDoubleArrayList [] arrays) { + + int dest = 0; + + int A = arrays.length; + int N = arrays[0].size(); + + OUTER: for (int i = 0; i < N; ++i) { + for (int j = 0; j < A; ++j) { + TDoubleArrayList a = arrays[j]; + double v = a.getQuick(i); + if (Double.isNaN(v)) { + continue OUTER; + } + a.setQuick(dest, v); + } + ++dest; + } + + if (dest < N) { + for (int i = 0; i < A; ++i) { + arrays[i].remove(dest, N-dest); + } + } + } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/resources/messages.properties --- a/flys-artifacts/src/main/resources/messages.properties Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/resources/messages.properties Wed Jan 23 11:15:35 2013 +0100 @@ -460,25 +460,51 @@ waterlevels = Waterlevels help.index=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe -help.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO -help.winfo.wsp.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.wsp.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_W.2BAC8-Q_Daten -help.winfo.discharge.longitudinal.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Berechnungsstrecke -help.winfo.duration.locations=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.discharge.longitudinal.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_f.2BAPw-r_W.2BAC8-Q_Daten -help.winfo.diff.diffs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Zusammenstellen_der_Differenzen -help.winfo.reference.curve.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Bezugsortes_.2BAC8_Bezugspegels -help.winfo.reference.curve.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Zielortes_.2BAC8_Zielpegels -help.winfo.uesk.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Berechnungsstrecke -help.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Wasserspiegellage -help.winfo.uesk.dem=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Digitalen_Gel.2BAOQ-ndemodells -help.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Abstand_Interpolierte_Profile -help.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Laterale_Begrenzung -help.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Differenz_Wasserspiegellage_und_Gel.2BAOQ-nde -help.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#A.2BANw-berschwemmungsfl.2BAOQ-che_.2BAC8_Szenario -help.winfo.historical.discharge.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Bezugspegels -help.winfo.historical.discharge.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_des_Auswertezeitraumes -help.winfo.historical.discharge.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_der_Analyseart +help.state.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO +help.state.winfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.river +help.state.winfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.calculation_mode +help.state.winfo.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location +help.state.winfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance_only +help.state.winfo.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance +help.state.winfo.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location_distance +help.state.winfo.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq +help.state.winfo.wq_adapted=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq_adapted +help.state.winfo.waterlevel_pair_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.waterlevel_pair_select +help.state.winfo.reference.curve.input.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.start +help.state.winfo.reference.curve.input.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.end +help.state.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.wsp +help.state.winfo.uesk.dgm=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.dgm +help.state.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.profiles +help.state.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.floodplain +help.state.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.differences +help.state.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.scenario +help.state.winfo.historicalq.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.reference_gauge +help.state.winfo.historicalq.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.timerange +help.state.winfo.historicalq.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.mode +help.state.winfo.function_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.function_select +help.state.winfo.extreme.percent=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.percent +help.state.winfo.extreme.qinput=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.qinput + +help.state.minfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.river +help.state.minfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.calculation_mode +help.state.minfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.distance_only +help.state.minfo.bed.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.year_epoch +help.state.minfo.sq.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.location +help.state.minfo.bed.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.location +help.state.minfo.dischargestate=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.dischargestate +help.state.minfo.soundings=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.soundings +help.state.minfo.bed.difference_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.difference_select +help.state.minfo.sq.outliers=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.outliers +help.state.minfo.sediment.load.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.year_epoch +help.state.minfo.sediment.load.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.location +help.state.minfo.bed.periods=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.periods +help.state.minfo.bed.char_diameter=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.char_diameter +help.state.minfo.sediment.load.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.period +help.state.minfo.sediment.load.epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.epochs +help.state.minfo.sediment.load.off_epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.off_epochs +help.state.minfo.sediment.load.unit=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.unit +help.state.minfo.sq.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.period + fix.reference.period=Reference period fix.reference.period.event=Reference event diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/resources/messages_de.properties --- a/flys-artifacts/src/main/resources/messages_de.properties Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/resources/messages_de.properties Wed Jan 23 11:15:35 2013 +0100 @@ -452,25 +452,51 @@ waterlevels = Wasserst\u00e4nde help.index=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe -help.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO -help.winfo.wsp.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.wsp.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_W.2BAC8-Q_Daten -help.winfo.discharge.longitudinal.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Berechnungsstrecke -help.winfo.duration.locations=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.discharge.longitudinal.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_f.2BAPw-r_W.2BAC8-Q_Daten -help.winfo.diff.diffs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Zusammenstellen_der_Differenzen -help.winfo.reference.curve.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Bezugsortes_.2BAC8_Bezugspegels -help.winfo.reference.curve.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Zielortes_.2BAC8_Zielpegels -help.winfo.uesk.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Berechnungsstrecke -help.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Wasserspiegellage -help.winfo.uesk.dem=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Digitalen_Gel.2BAOQ-ndemodells -help.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Abstand_Interpolierte_Profile -help.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Laterale_Begrenzung -help.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Differenz_Wasserspiegellage_und_Gel.2BAOQ-nde -help.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#A.2BANw-berschwemmungsfl.2BAOQ-che_.2BAC8_Szenario -help.winfo.historical.discharge.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Bezugspegels -help.winfo.historical.discharge.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_des_Auswertezeitraumes -help.winfo.historical.discharge.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_der_Analyseart +help.state.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO +help.state.winfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.river +help.state.winfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.calculation_mode +help.state.winfo.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location +help.state.winfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance_only +help.state.winfo.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance +help.state.winfo.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location_distance +help.state.winfo.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq +help.state.winfo.wq_adapted=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq_adapted +help.state.winfo.waterlevel_pair_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.waterlevel_pair_select +help.state.winfo.reference.curve.input.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.start +help.state.winfo.reference.curve.input.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.end +help.state.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.wsp +help.state.winfo.uesk.dgm=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.dgm +help.state.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.profiles +help.state.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.floodplain +help.state.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.differences +help.state.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.scenario +help.state.winfo.historicalq.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.reference_gauge +help.state.winfo.historicalq.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.timerange +help.state.winfo.historicalq.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.mode +help.state.winfo.function_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.function_select +help.state.winfo.extreme.percent=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.percent +help.state.winfo.extreme.qinput=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.qinput + +help.state.minfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.river +help.state.minfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.calculation_mode +help.state.minfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.distance_only +help.state.minfo.bed.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.year_epoch +help.state.minfo.sq.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.location +help.state.minfo.bed.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.location +help.state.minfo.dischargestate=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.dischargestate +help.state.minfo.soundings=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.soundings +help.state.minfo.bed.difference_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.difference_select +help.state.minfo.sq.outliers=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.outliers +help.state.minfo.sediment.load.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.year_epoch +help.state.minfo.sediment.load.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.location +help.state.minfo.bed.periods=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.periods +help.state.minfo.bed.char_diameter=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.char_diameter +help.state.minfo.sediment.load.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.period +help.state.minfo.sediment.load.epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.epochs +help.state.minfo.sediment.load.off_epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.off_epochs +help.state.minfo.sediment.load.unit=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.unit +help.state.minfo.sq.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.period + fix.reference.period=Bezugszeitraum fix.reference.period.event=Bezugsereignis diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/resources/messages_de_DE.properties --- a/flys-artifacts/src/main/resources/messages_de_DE.properties Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/resources/messages_de_DE.properties Wed Jan 23 11:15:35 2013 +0100 @@ -460,25 +460,51 @@ waterlevels = Wasserst\u00e4nde help.index=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe -help.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO -help.winfo.wsp.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.wsp.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_W.2BAC8-Q_Daten -help.winfo.discharge.longitudinal.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Berechnungsstrecke -help.winfo.duration.locations=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.discharge.longitudinal.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_f.2BAPw-r_W.2BAC8-Q_Daten -help.winfo.diff.diffs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Zusammenstellen_der_Differenzen -help.winfo.reference.curve.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Bezugsortes_.2BAC8_Bezugspegels -help.winfo.reference.curve.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Zielortes_.2BAC8_Zielpegels -help.winfo.uesk.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Berechnungsstrecke -help.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Wasserspiegellage -help.winfo.uesk.dem=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Digitalen_Gel.2BAOQ-ndemodells -help.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Abstand_Interpolierte_Profile -help.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Laterale_Begrenzung -help.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Differenz_Wasserspiegellage_und_Gel.2BAOQ-nde -help.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#A.2BANw-berschwemmungsfl.2BAOQ-che_.2BAC8_Szenario -help.winfo.historical.discharge.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Bezugspegels -help.winfo.historical.discharge.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_des_Auswertezeitraumes -help.winfo.historical.discharge.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_der_Analyseart +help.state.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO +help.state.winfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.river +help.state.winfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.calculation_mode +help.state.winfo.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location +help.state.winfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance_only +help.state.winfo.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance +help.state.winfo.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location_distance +help.state.winfo.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq +help.state.winfo.wq_adapted=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq_adapted +help.state.winfo.waterlevel_pair_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.waterlevel_pair_select +help.state.winfo.reference.curve.input.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.start +help.state.winfo.reference.curve.input.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.end +help.state.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.wsp +help.state.winfo.uesk.dgm=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.dgm +help.state.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.profiles +help.state.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.floodplain +help.state.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.differences +help.state.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.scenario +help.state.winfo.historicalq.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.reference_gauge +help.state.winfo.historicalq.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.timerange +help.state.winfo.historicalq.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.mode +help.state.winfo.function_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.function_select +help.state.winfo.extreme.percent=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.percent +help.state.winfo.extreme.qinput=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.qinput + +help.state.minfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.river +help.state.minfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.calculation_mode +help.state.minfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.distance_only +help.state.minfo.bed.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.year_epoch +help.state.minfo.sq.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.location +help.state.minfo.bed.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.location +help.state.minfo.dischargestate=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.dischargestate +help.state.minfo.soundings=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.soundings +help.state.minfo.bed.difference_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.difference_select +help.state.minfo.sq.outliers=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.outliers +help.state.minfo.sediment.load.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.year_epoch +help.state.minfo.sediment.load.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.location +help.state.minfo.bed.periods=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.periods +help.state.minfo.bed.char_diameter=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.char_diameter +help.state.minfo.sediment.load.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.period +help.state.minfo.sediment.load.epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.epochs +help.state.minfo.sediment.load.off_epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.off_epochs +help.state.minfo.sediment.load.unit=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.unit +help.state.minfo.sq.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.period + fix.reference.period=Bezugszeitraum fix.reference.period.event=Bezugsereignis diff -r 9e25c7523485 -r ac9a3d9576b4 flys-artifacts/src/main/resources/messages_en.properties --- a/flys-artifacts/src/main/resources/messages_en.properties Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-artifacts/src/main/resources/messages_en.properties Wed Jan 23 11:15:35 2013 +0100 @@ -463,25 +463,51 @@ waterlevels = Waterlevels help.index=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe -help.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO -help.winfo.wsp.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.wsp.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_W.2BAC8-Q_Daten -help.winfo.discharge.longitudinal.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Berechnungsstrecke -help.winfo.duration.locations=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Streckendaten -help.winfo.discharge.longitudinal.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_f.2BAPw-r_W.2BAC8-Q_Daten -help.winfo.diff.diffs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Zusammenstellen_der_Differenzen -help.winfo.reference.curve.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Bezugsortes_.2BAC8_Bezugspegels -help.winfo.reference.curve.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_des_Zielortes_.2BAC8_Zielpegels -help.winfo.uesk.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Berechnungsstrecke -help.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_der_Wasserspiegellage -help.winfo.uesk.dem=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Digitalen_Gel.2BAOQ-ndemodells -help.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Abstand_Interpolierte_Profile -help.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Laterale_Begrenzung -help.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Eingabe_Differenz_Wasserspiegellage_und_Gel.2BAOQ-nde -help.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#A.2BANw-berschwemmungsfl.2BAOQ-che_.2BAC8_Szenario -help.winfo.historical.discharge.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Wahl_des_Bezugspegels -help.winfo.historical.discharge.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_des_Auswertezeitraumes -help.winfo.historical.discharge.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#Auswahl_der_Analyseart +help.state.winfo=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO +help.state.winfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.river +help.state.winfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.calculation_mode +help.state.winfo.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location +help.state.winfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance_only +help.state.winfo.distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.distance +help.state.winfo.location_distance=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.location_distance +help.state.winfo.wq=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq +help.state.winfo.wq_adapted=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.wq_adapted +help.state.winfo.waterlevel_pair_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.waterlevel_pair_select +help.state.winfo.reference.curve.input.start=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.start +help.state.winfo.reference.curve.input.end=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.reference.curve.input.end +help.state.winfo.uesk.wsp=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.wsp +help.state.winfo.uesk.dgm=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.dgm +help.state.winfo.uesk.profiles=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.profiles +help.state.winfo.uesk.floodplain=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.floodplain +help.state.winfo.uesk.differences=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.differences +help.state.winfo.uesk.scenario=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.uesk.scenario +help.state.winfo.historicalq.reference_gauge=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.reference_gauge +help.state.winfo.historicalq.timerange=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.timerange +help.state.winfo.historicalq.mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.historicalq.mode +help.state.winfo.function_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.function_select +help.state.winfo.extreme.percent=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.percent +help.state.winfo.extreme.qinput=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/WINFO#help.state.winfo.extreme.qinput + +help.state.minfo.river=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.river +help.state.minfo.calculation_mode=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.calculation_mode +help.state.minfo.distance_only=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.distance_only +help.state.minfo.bed.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.year_epoch +help.state.minfo.sq.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.location +help.state.minfo.bed.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.location +help.state.minfo.dischargestate=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.dischargestate +help.state.minfo.soundings=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.soundings +help.state.minfo.bed.difference_select=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.difference_select +help.state.minfo.sq.outliers=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.outliers +help.state.minfo.sediment.load.year_epoch=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.year_epoch +help.state.minfo.sediment.load.location=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.location +help.state.minfo.bed.periods=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.periods +help.state.minfo.bed.char_diameter=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.bed.char_diameter +help.state.minfo.sediment.load.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.period +help.state.minfo.sediment.load.epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.epochs +help.state.minfo.sediment.load.off_epochs=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.off_epochs +help.state.minfo.sediment.load.unit=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sediment.load.unit +help.state.minfo.sq.period=https://flys-intern.intevation.de/Flys-3.0/OnlineHilfe/MINFO#help.state.minfo.sq.period + fix.reference.period=Reference period fix.reference.period.event=Reference event diff -r 9e25c7523485 -r ac9a3d9576b4 flys-backend/doc/annotation-types.xml --- a/flys-backend/doc/annotation-types.xml Wed Jan 23 11:14:41 2013 +0100 +++ b/flys-backend/doc/annotation-types.xml Wed Jan 23 11:15:35 2013 +0100 @@ -39,7 +39,7 @@ - +