Как вы рассчитываете расстояние между пятью маркерами в Google maps V3? Я знаю, что должен использовать формулу Хаверсайна, которую я исследовал, и даже нашел здесь пост, где рассказывается о расчете расстояния между двумя маркерами. Что если я хочу посчитать это между пятью маркерами? Пытался несколько часов, но рассчитанный километр - это неправильно. Спасибо
Ниже приведены коды:
// compute distance between the two points
var R = 6371; // KM
var dLat = toRad(location5.lat()-location4.lat()-location3.lat()-location2.lat()-location1.lat());
var dLon = toRad(location5.lng()-location4.lng()-location3.lng()-location2.lng()-location1.lng());
var dLat1 = toRad(location1.lat());
var dLat2 = toRad(location2.lat());
var dLat3 = toRad(location3.lat());
var dLat4 = toRad(location4.lat());
var dLat5 = toRad(location5.lat());
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(dLat1) * Math.cos(dLat1) *
Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
document.getElementById("distance_direct").innerHTML = "<br/><br/><br/>The distance between the five points (in a straight line) is: "+d +" Km.";
}
function toRad(deg)
{
return deg * Math.PI/180;
}
Полагаю, моя неправильная часть - строка, начинающаяся с var, формула. Пожалуйста, укажите мою ошибку, если я ошибаюсь, и, возможно, решение поможет?