Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/Range.java @ 3441:bfbd478bd607
FixA: Moved Q -> W conversion code into segments to be reusable.
flys-artifacts/trunk@5104 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 23 Jul 2012 14:19:07 +0000 |
parents | 086326be721c |
children | 51f76225823b |
line wrap: on
line source
package de.intevation.flys.artifacts.model; import java.io.Serializable; public class Range implements Serializable { public static final double EPSILON = 1e-5; protected double start; protected double end; public Range() { } public Range(Range other) { start = other.start; end = other.end; } public Range(double start, double end) { this.start = start; this.end = end; } public double getStart() { return start; } public double getEnd() { return end; } public boolean disjoint(Range other) { return start > other.end || other.start > end; } public boolean intersects(Range other) { return !disjoint(other); } public void extend(Range other) { if (other.start < start) start = other.start; if (other.end > end ) end = other.end; } public boolean clip(Range other) { if (disjoint(other)) return false; if (other.start > start) start = other.start; if (other.end < end ) end = other.end; return true; } public boolean inside(double x) { return x > start-EPSILON && x < end+EPSILON; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :