gernotbelger@9415: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@9415: * Software engineering by gernotbelger@9415: * Björnsen Beratende Ingenieure GmbH gernotbelger@9415: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@9415: * gernotbelger@9415: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@9415: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@9415: * documentation coming with Dive4Elements River for details. gernotbelger@9415: */ gernotbelger@9415: package org.dive4elements.river.artifacts.model.fixings; gernotbelger@9415: gernotbelger@9415: import org.dive4elements.river.artifacts.model.Range; gernotbelger@9415: gernotbelger@9415: final class SectorRange extends Range { gernotbelger@9415: gernotbelger@9415: private static final double EPSILON = 1e-2; gernotbelger@9415: gernotbelger@9415: private static final long serialVersionUID = 1L; gernotbelger@9415: gernotbelger@9415: private int sector; gernotbelger@9415: gernotbelger@9415: public SectorRange() { gernotbelger@9415: } gernotbelger@9415: gernotbelger@9415: public SectorRange(final SectorRange other) { gernotbelger@9415: super(other); gernotbelger@9415: gernotbelger@9415: this.sector = other.sector; gernotbelger@9415: } gernotbelger@9415: gernotbelger@9415: public SectorRange(final Range range) { gernotbelger@9415: super(range); gernotbelger@9415: } gernotbelger@9415: gernotbelger@9415: public int getSector() { gernotbelger@9415: return this.sector; gernotbelger@9415: } gernotbelger@9415: gernotbelger@9415: public void setSector(final int sector) { gernotbelger@9415: this.sector = sector; gernotbelger@9415: } gernotbelger@9415: gernotbelger@9415: public boolean enlarge(final SectorRange other) { gernotbelger@9415: if (this.sector == other.sector && Math.abs(this.getEnd() - other.getStart()) < EPSILON) { gernotbelger@9415: setEnd(other.getEnd()); gernotbelger@9415: return true; gernotbelger@9415: } gernotbelger@9415: return false; gernotbelger@9415: } gernotbelger@9415: }