Вы можете сделать прямое расстояние с математикой, вам не нужно использовать Google API и использовать любой «кредит», делающий это.
Вот функция от широты / долготы до широты и долготы Iнаписал для использования в Angular 6 +:
asTheCrowFlies(x1: number, y1: number, x2: number, y2: number) {
var result = 0;
const RADIANS: number = 180 / 3.14159265;
const METRES_IN_MILE: number = 1609.34;
if (x1 == x2 && y1 == y2) {
result = 0;
} else {
// Calculating Distance between Points
var lt1 = x1 / RADIANS;
var lg1 = y1 / RADIANS;
var lt2 = x2 / RADIANS;
var lg2 = y2 / RADIANS;
// radius of earth in miles (3,958.8) * metres in a mile * position on surface of sphere...
result = (3958.8 * METRES_IN_MILE) * Math.acos(Math.sin(lt1) * Math.sin(lt2) + Math.cos(lt1) * Math.cos(lt2) * Math.cos(lg2 - lg1));
}
return result; }
Если вы вычтете множитель «мили в метры», ответ будет в милях.Вам нужен только API Google для расстояний ROAD, а это не сделано с API MAP, который использует AGM, вместо этого вам нужен API ROUTE от Google.Я еще не видел угловой компонент для ROUTE API;большинство людей просто пишут сервис с помощью вызовов API.