2016-05-25 2 views
-3

Я выборка ближайших лат давно из базы данных на основе моего текущего location.My текущего местоположенияGoogle Maps расстояние расчет вопрос

 latitude: 32.5033801 
     longitude: 74.49884399999999 

Я нахожу эту форму https://ctrlq.org/maps/where/. Я использую этот запрос

SELECT lat,lng, (6371 * acos(cos(radians(32.5033801)) * cos(radians(lat)) * cos(radians(lng) - radians(74.49884399999999)) + sin(radians(32.5033801)) * sin(radians(lat)))) AS distance FROM stores HAVING distance < 60 ORDER BY distance LIMIT 0 , 20

Этот запрос дает мне расстояние от моего текущего местоположения до Model Town Rd, Гуджранвала, Пакистан 47,2 КМ. но карта google дает мне 54.9KM. Теперь разница составляет около 7 км, что я считаю слишком большим.

Я приложил два изображения первых является результатом моего запроса и второй является результатом Google Maps

enter image description here

enter image description here

+2

Существует два типа расстояния между двумя координатами, то есть расстояние между линиями и расстояние движения, вы рассчитываете расстояние по линии, и вам нужно проехать. – Poria

+0

как я могу найти расстояние от запроса –

+0

Я вижу 58.0 и 68.4, разве вы не должны жаловаться на них? –

ответ

0

Ваш запрос вычисляет расстояние между двумя точками. Карты Google дают вам указания по проезду.

0

Есть два типа расстояния между двумя координатами т.е. линии расстояние и вождения расстояние, вы вычисления расстояния линии и вы должны вождения расстояние.

Вот документация, чтобы помочь вам:

https://developers.google.com/maps/documentation/distance-matrix/intro#RequestParameters

и вот пример:

https://developers.google.com/maps/documentation/javascript/examples/distance-matrix

Надеется, что это помогает!

+0

Могу ли я вычислить расстояние от базы данных, как, например, расчет расстояния линии –

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