/// <summary> /// Test whether two geometries lie within a given distance of each other. /// </summary> /// <param name="g0">A <see cref="Geometry">geometry</see></param> /// <param name="g1">A <see cref="Geometry">geometry</see></param> /// <param name="distance">The distance to test</param> /// <returns><c>true</c> if <c>g0.distance(g1) <= <paramref name="distance"/></c></returns> public static bool IsWithinDistance(Geometry g0, Geometry g1, double distance) { var distOp = new Distance3DOp(g0, g1, distance); return(distOp.Distance() <= distance); }
/// <summary> /// Compute the the nearest points of two geometries. The points are /// presented in the same order as the input Geometries. /// </summary> /// <param name="g0">A <see cref="Geometry">geometry</see></param> /// <param name="g1">A <see cref="Geometry">geometry</see></param> /// <returns>The nearest points in the geometries</returns> public static Coordinate[] NearestPoints(Geometry g0, Geometry g1) { var distOp = new Distance3DOp(g0, g1); return(distOp.NearestPoints()); }
/// <summary> /// Compute the distance between the nearest points of two geometries. /// </summary> /// <param name="g0">A <see cref="Geometry">geometry</see></param> /// <param name="g1">A <see cref="Geometry">geometry</see></param> /// <returns>The distance between the geometries</returns> public static double Distance(Geometry g0, Geometry g1) { var distOp = new Distance3DOp(g0, g1); return(distOp.Distance()); }