import { GeoLocation } from './GeoLocation'; /** * A class for various location calculations * Most of the code in this class is ported from Chris Veness' * LGPL Javascript Implementation * * @author © Eliyahu Hershfeld 2009 - 2020 * @deprecated All methods in this class are available in the {@link GeoLocation} class, and this class that duplicates that * code will be removed in a future release. */ export declare class GeoLocationUtils { /** * Constant for a distance type calculation. * @see #getGeodesicDistance(GeoLocation, GeoLocation) */ private static readonly DISTANCE; /** * Constant for an initial bearing type calculation. * @see #getGeodesicInitialBearing(GeoLocation, GeoLocation) */ private static readonly INITIAL_BEARING; /** * Constant for a final bearing type calculation. * @see #getGeodesicFinalBearing(GeoLocation, GeoLocation) */ private static readonly FINAL_BEARING; /** * Calculate the geodesic initial bearing between this Object and * a second Object passed to this method using Thaddeus * Vincenty's inverse formula See T Vincenty, "Direct and * Inverse Solutions of Geodesics on the Ellipsoid with application of nested equations", Survey Review, vol XXII * no 176, 1975. * * @param location * the initial location * @param destination * the destination location * @return the geodesic bearing */ static getGeodesicInitialBearing(location: GeoLocation, destination: GeoLocation): number; /** * Calculate the geodesic final bearing between this Object * and a second Object passed to this method using Thaddeus Vincenty's * inverse formula See T Vincenty, "Direct and Inverse Solutions of Geodesics * on the Ellipsoid with application of nested equations", Survey Review, vol XXII no 176, 1975. * * @param location * the initial location * @param destination * the destination location * @return the geodesic bearing */ static getGeodesicFinalBearing(location: GeoLocation, destination: GeoLocation): number; /** * Calculate geodesic distance in Meters * between this Object and a second Object passed to this method using Thaddeus Vincenty's inverse formula See T Vincenty, * "Direct and Inverse Solutions of Geodesics on the * Ellipsoid with application of nested equations", Survey Review, vol XXII no 176, 1975. This uses the * WGS-84 geodetic model. * @param location * the initial location * @param destination * the destination location * @return the geodesic distance in Meters */ static getGeodesicDistance(location: GeoLocation, destination: GeoLocation): number; /** * Calculates the initial geodesic bearing, final bearing or * geodesic distance using Thaddeus Vincenty's inverse formula See T Vincenty, "Direct and Inverse Solutions of Geodesics on the Ellipsoid * with application of nested equations", Survey Review, vol XXII no 176, 1975. * * @param location * the initial location * @param destination * the destination location * @param formula * This formula calculates initial bearing ({@link #INITIAL_BEARING}), * final bearing ({@link #FINAL_BEARING}) and distance ({@link #DISTANCE}). * @return * the geodesic distance, initial or final bearing (based on the formula passed in) between the location * and destination in Meters * @see #getGeodesicDistance(GeoLocation, GeoLocation) * @see #getGeodesicInitialBearing(GeoLocation, GeoLocation) * @see #getGeodesicFinalBearing(GeoLocation, GeoLocation) */ private static vincentyFormula; /** * Returns the rhumb line * bearing from the current location to the GeoLocation passed in. * * @param location * the initial location * @param destination * the destination location * @return the bearing in degrees */ static getRhumbLineBearing(location: GeoLocation, destination: GeoLocation): number; /** * Returns the rhumb line distance from the current * location to the GeoLocation passed in. Ported from Chris Veness' * Javascript Implementation. * * @param location * the initial location * @param destination * the destination location * @return the distance in Meters */ static getRhumbLineDistance(location: GeoLocation, destination: GeoLocation): number; }