Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQDay.java @ 5818:a4ff4167be1e
Request feature info on all layers and show it as html if
the server does not return valid gml.
Non queryable layers produce an error message when the request
fails. This is good enough
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 24 Apr 2013 17:33:27 +0200 |
parents | 5ff481ab24a1 |
children |
line wrap: on
line source
package de.intevation.flys.artifacts.model; import gnu.trove.TIntArrayList; /** * This class represents a pool of data triples that consists of 'W', 'Q' and * 'Day' data. * * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class WQDay extends WQ { protected TIntArrayList days; public WQDay() { super(""); days = new TIntArrayList(); } public WQDay(int capacity) { super(capacity); days = new TIntArrayList(capacity); } public WQDay(int [] days, double [] ws, double [] qs) { super(qs, ws, ""); this.days = new TIntArrayList(days); } public void add(int day, double w, double q) { super.add(w, q); days.add(day); } public boolean isIncreasing() { int lo = getDay(0); int hi = getDay(size()-1); return lo < hi; } public int getDay(int idx) { return days.getQuick(idx); } @Override public void removeNaNs() { int dest = 0; int N = ws.size(); for (int i = 0; i < N; ++i) { double wi = ws.getQuick(i); double qi = qs.getQuick(i); if (Double.isNaN(wi) || Double.isNaN(qi)) { continue; } days.setQuick(dest, days.getQuick(i)); ws.setQuick(dest, wi); qs.setQuick(dest, qi); ++dest; } if (dest < N) { days.remove(dest, N-dest); ws .remove(dest, N-dest); qs .remove(dest, N-dest); } } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :