## com.vividsolutions.jts.operation.distance
Class DistanceOp

    java.lang.Object
      com.vividsolutions.jts.operation.distance.DistanceOp

public class DistanceOp
extends java.lang.Object

Find two points on two `Geometry`s which lie within a given distance, or else are the nearest points on the geometries (in which case this also provides the distance between the geometries).

The distance computation also finds a pair of points in the input geometries which have the minimum distance between them. If a point lies in the interior of a line segment, the coordinate computed is a close approximation to the exact point.

The algorithms used are straightforward O(n^2) comparisons. This worst-case performance could be improved on by using Voronoi techniques or spatial indexes.

Version:
  1.7

Constructor Summary
`DistanceOp(Geometry g0, Geometry g1)` Constructs a DistanceOp that computes the distance and nearest points between the two specified geometries.
`DistanceOp(Geometry g0, Geometry g1, double terminateDistance)` Constructs a DistanceOp that computes the distance and nearest points between the two specified geometries.

Method Summary
`GeometryLocation[]` `closestLocations()` Deprecated. renamed to nearestLocations
`Coordinate[]` `closestPoints()` Deprecated. renamed to nearestPoints
`static Coordinate[]` `closestPoints(Geometry g0, Geometry g1)` Deprecated. renamed to nearestPoints
`double` `distance()` Report the distance between the nearest points on the input geometries.
`static double` `distance(Geometry g0, Geometry g1)` Compute the distance between the nearest points of two geometries.
`static boolean` `isWithinDistance(Geometry g0, Geometry g1, double distance)` Test whether two geometries lie within a given distance of each other.
`GeometryLocation[]` `nearestLocations()` Report the locations of the nearest points in the input geometries.
`Coordinate[]` `nearestPoints()` Report the coordinates of the nearest points in the input geometries.
`static Coordinate[]` `nearestPoints(Geometry g0, Geometry g1)` Compute the the nearest points of two geometries.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DistanceOp

    public DistanceOp(Geometry g0,
                      Geometry g1)

  Constructs a DistanceOp that computes the distance and nearest points between the two specified geometries.

Parameters:
  `g0` - a Geometry
  `g1` - a Geometry

### DistanceOp

    public DistanceOp(Geometry g0,
                      Geometry g1,
                      double terminateDistance)

  Constructs a DistanceOp that computes the distance and nearest points between the two specified geometries.

Parameters:
  `g0` - a Geometry
  `g1` - a Geometry
  `terminateDistance` - the distance on which to terminate the search

Method Detail

### distance

    public static double distance(Geometry g0,
                                  Geometry g1)

  Compute the distance between the nearest points of two geometries.

  Parameters:
    `g0` - a `Geometry`
    `g1` - another `Geometry`
  Returns:
    the distance between the geometries

### isWithinDistance

    public static boolean isWithinDistance(Geometry g0,
                                           Geometry g1,
                                           double distance)

  Test whether two geometries lie within a given distance of each other.

  Parameters:
    `g0` - a `Geometry`
    `g1` - another `Geometry`
    `distance` - the distance to test
  Returns:
    true if g0.distance(g1) <= distance

### nearestPoints

    public static Coordinate[] nearestPoints(Geometry g0,
                                             Geometry g1)

  Compute the the nearest points of two geometries. The points are presented in the same order as the input Geometries.

  Parameters:
    `g0` - a `Geometry`
    `g1` - another `Geometry`
  Returns:
    the nearest points in the geometries

### closestPoints

    public static Coordinate[] closestPoints(Geometry g0,
                                             Geometry g1)

  Deprecated. renamed to nearestPoints

  Compute the the closest points of two geometries. The points are presented in the same order as the input Geometries.

  Parameters:
    `g0` - a `Geometry`
    `g1` - another `Geometry`
  Returns:
    the closest points in the geometries

### distance

    public double distance()

  Report the distance between the nearest points on the input geometries.

  Returns:
    the distance between the geometries
  Throws:
    `java.lang.IllegalArgumentException` - if either input geometry is null

### nearestPoints

    public Coordinate[] nearestPoints()

  Report the coordinates of the nearest points in the input geometries. The points are presented in the same order as the input Geometries.

  Returns:
    a pair of `Coordinate`s of the nearest points

### closestPoints

    public Coordinate[] closestPoints()

  Deprecated. renamed to nearestPoints

  Returns:

### nearestLocations

    public GeometryLocation[] nearestLocations()

  Report the locations of the nearest points in the input geometries. The locations are presented in the same order as the input Geometries.

  Returns:
    a pair of `GeometryLocation`s for the nearest points

### closestLocations

    public GeometryLocation[] closestLocations()

  Deprecated. renamed to nearestLocations

  Returns: