2016-08-05 3 views
-1

вождения я попробовал этогоКак найти расстояние между двумя координатами с помощью JavaScript с режимом

function distance(lat1,lon1,lat2,lon2) 
 
{ 
 
\t var R = 6371; // km (change this constant to get miles) 
 
\t var dLat = (lat2-lat1) * Math.PI/180; 
 
\t var dLon = (lon2-lon1) * Math.PI/180; 
 
\t var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(lat1 * Math.PI/180) * Math.cos(lat2 * Math.PI/180) * Math.sin(dLon/2) * Math.sin(dLon/2); 
 
\t var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
 
\t var d = R * c; 
 
\t if (d>1) return Math.round(d)+"km"; 
 
\t else if (d<=1) return Math.round(d*1000)+"m"; 
 
\t return d; 
 
}

расстояние (21.1702401,72.83106070000008,22.3038945,70.80215989999999);

с помощью описанных выше функций им получать этот вывод: 245km

результата приходя на прямое Расстояние: 245km

, но мне нужно вождения режим ditance этого места и его выход должен быть 448km

От значения : Сурат, Гуджарат, Индия к стоимости является: Раджкот, Гуджарат, Индия

так пожалуйста, помогите мне решить эту проблему .. Благодаря

ответ

1

Направления движения не могут быть «просто» рассчитаны. Вам нужно знать дороги, как долго они там, где вы можете отключиться и многое другое.

Слишком сложно сделать одну функцию без базовых данных.

Я предлагаю вам изучить API карт Google или найти, есть ли у TomTom/Apple/Garmin API для своих картографических данных.

 Смежные вопросы

  • Нет связанных вопросов^_^