Я работаю над решением для отслеживания GPS. Но моя проблема в том, что у меня есть геолокация, но я хочу перейти из моего местоположения в другое местоположение, которое я ранее определил. Как мне это сделать ? Я работаю с Google Maps API
Вы можете использовать формулу Haversine, например:
Number.prototype.toRad = function() { return this * Math.PI / 180; } var Point = function(lat, lng){ this.lat = lat; this.lng = lng; } var p1 = new Point(-23.6536633, -46.70669269999996); var p2 = new Point(-23.5553565, -46.66189859999997); var deltaLat = p2.lat - p1.lat; var deltaLng = p2.lng - p1.lng; var lat = deltaLat.toRad()/2; var lng = deltaLng.toRad()/2; var a = Math.sin(lat) * Math.sin(lat) + Math.cos(p1.lat.toRad()) * Math.cos(p2.lat.toRad()) * Math.sin(lng) * Math.sin(lng); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)) var distance = 6371 * c; console.log(distance); document.getElementById("demo").innerHTML = distance.toFixed(2) +" km";
<p id="demo"></p>
Вдохновлен этой темой:
Использование формулы Haversine в Javascript