Клуб API Карт

Получение расстояния между 2 точка без JavaScript

Пост в архиве.

Как получить расстояние между 2 точками используя route.getHumanLength() в ЯваСкрипте я знаю.

Мне нужно получить расстояние, но без использования ЯваСкрипт.

Возможно ли это, например, используя YMapsML (Yandex Maps Markup Language)?

11 комментариев

YMapsML - это всего лишь xml-формат представления геоданных.

Он не умеет ничего считать.

Можно поискать формулы расчета расстояний в клубе или в интернетах

Спасибо.

Sergey Konstantinov
28 января 2016, 02:46

Помогите ещё немного:

как будет выглядеть код на примере любого языка программирования:

Sergey Konstantinov
28 января 2016, 02:46
L = R * Math.acos(Math.sin(lat1) * Math.sin(lat2) + Math.cos(lat1) * Math.cos(lat2) * Math.cos(long1 - long2))
R ~ 6360 км, широты и долготы в радианах.

Какие же мозги нужно иметь чтобы разобраться в этом: ;-)

Вот есть точка1 56.977959,40.966455 и точка 2 57.033397,40.971077

 

Профессор

куда циферки подставлять, подскажи пожалуйста

 

Sergey Konstantinov
28 января 2016, 02:46
Сначала разберитесь, что из этого широта (lat), а что долгота (long).
Дальше умножьте на 2 * Math.PI / 180 и подставьте в формулу.
Широта: 56°58′47.51″N (56.979864)Долгота: 40°58′1.42″E (40.967061)Какую цифру использовать для расчёта 56°58′47.51 или 56.979864 ?
Sergey Konstantinov
28 января 2016, 02:46
56.979864

Так если нужно сохранить это расстояние где-то на сервере – можно же через Ajax его туда передавать..

можно, но не ясно зачем )