создать полигон для маршрута, используя широту и долготу

У меня есть предопределенный маршрут в виде набора мест с широтой и долготой. Я хочу создать многоугольник, используя эти координаты, и хочу знать, когда пользователь отклоняется от него.

введите здесь описание изображения

У кого-нибудь есть советы или пример кода для рисования виртуального забора через точки A, B и C?


person Manu    schedule 12.01.2020    source источник


Ответы (1)


Я не знаю, подходит ли полигон...

Я могу предложить более простой подход, при котором вы вычисляете расстояние от точки до сегмента линии и проверяете distance < fence radius

вы можете вычислить линейные сегменты вашего маршрута, в вашем случае сегменты (A,B) (B,C)

когда вы получили новую позицию и хотите знать, находится ли она в пределах забора, вы просто вычисляете расстояние от этой позиции до каждого сегмента линии

расчет этого объясняется (очень четко, с примерами кода) в здесь

математика географического положения довольно проста при работе с небольшими областями (не нужно принимать во внимание кривизну земли), но даже если вы это сделаете, это небольшое изменение, и для этого также есть много примеров кода

person shahaf    schedule 13.01.2020
comment
Спасибо @shahaf за подсказку... попробую реализовать!!!! - person Manu; 13.01.2020