drasys.or.geom.geo
Class Range

java.lang.Object
  |
  +--drasys.or.geom.geo.Geo
        |
        +--drasys.or.geom.geo.Range

public class Range
extends Geo
implements RangeI, java.io.Serializable

An implementation of a range in the geographic coordinate system. This range implementation is a scaler object and not a container, it maintains private copies of the boundary points.

See Also:
Serialized Form

Constructor Summary
Range(double west, double latitude1, double east, double latitude2)
           
Range(PointI point1, PointI point2)
           
Range(RangeI range)
           
 
Method Summary
 PointI bound(PointI point)
          Returns the argument 'point' if it is included in the range.
 PointI boundPoint(PointI point)
          Returns the argument 'point' if it is included in the range.
 PointI centroid()
          Returns the centroid center point of the range.
 double distanceProxyTo(PointI point)
          Returns the distance proxy from the range boundary to a point.
 double distanceTo(PointI point)
          Returns the distance from the range boundary to a point.
 double east()
          Returns the longitude of the east boundary for the range.
 boolean equals(java.lang.Object o)
           
 RangeI getExpandedRange(PointI point)
          Returns a range that includes both this range and the argument.
 PointI getMax()
          Returns the maximum boundary point.
 PointI getMin()
          Returns the minimum boundary point.
 int hashCode()
           
 boolean includes(PointI point)
          Returns true if the point is inside the range or on the boundary.
 PointI nearestPointTo(PointI point)
          Returns the point on the boundary that is the least distance to 'point'.
 double north()
          Returns the latitude of the north boundary for the range.
 PointI northeast()
          Returns the boundary point that defines the northeast corner of the range.
 RangeI range()
           
 double south()
          Returns the latitude of the south boundary for the range.
 PointI southwest()
          Returns the boundary point that defines the southwest corner of the range.
 java.lang.String toString()
           
 double west()
          Returns the longitude of the west boundary for the range.
 
Methods inherited from class drasys.or.geom.geo.Geo
coordinateSystem, ellipsoid, getCentroid, getDistanceProxyTo, getDistanceTo, getNearestPointTo, getRange
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Range

public Range(double west,
             double latitude1,
             double east,
             double latitude2)

Range

public Range(PointI point1,
             PointI point2)

Range

public Range(RangeI range)
Method Detail

boundPoint

public PointI boundPoint(PointI point)
Returns the argument 'point' if it is included in the range. Otherwise; returns the point on the boundary that is closest to 'point'.

getMin

public PointI getMin()
Description copied from interface: RangeI
Returns the minimum boundary point.

getMax

public PointI getMax()
Description copied from interface: RangeI
Returns the maximum boundary point.

range

public RangeI range()

centroid

public PointI centroid()
Description copied from interface: RangeI
Returns the centroid center point of the range.
Specified by:
centroid in interface RangeI

east

public double east()
Returns the longitude of the east boundary for the range.
Specified by:
east in interface RangeI

west

public double west()
Returns the longitude of the west boundary for the range.
Specified by:
west in interface RangeI

north

public double north()
Returns the latitude of the north boundary for the range.
Specified by:
north in interface RangeI

south

public double south()
Returns the latitude of the south boundary for the range.
Specified by:
south in interface RangeI

southwest

public PointI southwest()
Returns the boundary point that defines the southwest corner of the range.
Specified by:
southwest in interface RangeI

northeast

public PointI northeast()
Returns the boundary point that defines the northeast corner of the range.
Specified by:
northeast in interface RangeI

bound

public PointI bound(PointI point)
Returns the argument 'point' if it is included in the range. Otherwise; returns the point on the boundary that is closest to 'point'.

nearestPointTo

public PointI nearestPointTo(PointI point)
Returns the point on the boundary that is the least distance to 'point'.

distanceTo

public double distanceTo(PointI point)
Returns the distance from the range boundary to a point.

distanceProxyTo

public double distanceProxyTo(PointI point)
Returns the distance proxy from the range boundary to a point.

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

includes

public boolean includes(PointI point)
Returns true if the point is inside the range or on the boundary.
Throws:
GeomError - if the point is not in the same coordinate system.

getExpandedRange

public RangeI getExpandedRange(PointI point)
Returns a range that includes both this range and the argument. If this range already includes the argument, then 'this' is returned.


Copyright(C)1997-2000 by DRA Systems all rights reserved. OpsResearch.com