Вогнутый корпус из GPS-координат в Javascript

Это мой первый вопрос в stackru после прочтения большого количества информации о вогнутых оболочках и альфа-формах, но, к сожалению, я до сих пор не нашел рабочего решения:(

Мой вход - большой массив GPS-координат (широта, долгота) (около 1000-2000 точек), определяющих трек GPS. Сейчас я ищу способ измерения периметра контура всех координат.

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

Я использую javascript для всего моего программирования и ищу следующую задачу: Вход: все координаты широты / долготы (WGS84) Выход: все координаты кромки, определяющие вогнутый корпус.

Я уже нашел интересную информацию о вогнутых корпусах, альфа-формах и триангуляции Делоне, но, к сожалению, все сведения относятся к 2D-плоскости / X,Y-координатам (например, [5,2][6,7][3,2]) и, если я пытаюсь эти сценарии с моими координатами WGS84 -> не могут получить вогнутый корпус моего облака точек:(

Большое спасибо за любую помощь!

2 ответа

Попробуйте использовать библиотеку hull.js для решения вашей проблемы: https://github.com/AndriiHeonia/hull

Вы можете использовать альфа-формы. Это триангуляция Делоне без ребер, превышающих альфа.WGS84 означает сферическую землю, поэтому z не так полезен. Но вы можете попробовать 3d триангуляцию (установите Z на что угодно) или попробовать проекцию карты Меркатора: https://alastaira.wordpress.com/2011/01/23/the-google-maps-bing-maps-spherical-mercator-projection/ а затем альфа-формы.

Другие вопросы по тегам