Картографический проект - я хочу показать файлы KML на карте и иметь возможность сортировать их по дате, местоположению и т. Д. - PullRequest
0 голосов
/ 23 января 2019

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

Я работаю в компании, занимающейся аэросъемкой, и каждый раз, когда проектПосле запуска программа LiDAR создает файл журнала.Из этого файла журнала я написал скрипт, который извлекает данные и выводит файл KML с такими данными, как номера линий полета, местоположение, высота и т. Д.

Теперь я хочу написать программу, которая можетзагрузите эти KML-файлы в базу данных и покажите их в окне, похожем на Google Планета Земля, чтобы пользователь мог отсортировать номера рейсов, места и даты и т. д. Это было бы невероятно удобным программным обеспечением в работе, и многие люди использовали бы егоне говоря уже о массивных броуновских очках за то, что я пытался получить должность младшего разработчика в компании в будущем.

Я знаю, что в основном могу использовать Google Планета Земля для выполнения этой задачи, но для меня это неточка.

До сих пор я изучал Folium и LeafletJS.

https://leafletjs.com

https://pypi.org/project/folium/

Folium может манипулировать данными, а Leaflet можетпредставьте это, но я не уверен, что у меня есть лучшее решение для этой работы и может ли оно сделать именно то, что мне нужно.Особенно учитывая, что я знаю только немного Javascript.Я также не уверен, если Folium

В идеале, это приложение будет либо автономным программным обеспечением, либо чем-то, что мой существующий сценарий пишет на онлайн-сервере, а затем может быть открыт и показан через окно браузера.Я откусываю больше, чем могу пережевать, но я готов к тому, что это займет немного времени и будет хорошим учебным проектом.Желательно написано на Python.

Будем весьма благодарны за любые подсказки или предложения относительно того, какие пакеты я могу использовать.Или, если я собираюсь сделать это в совершенно неправильном направлении, пожалуйста, дайте мне знать.

Большое спасибо.

1 Ответ

0 голосов
/ 23 января 2019

Добро пожаловать на SO.

Вот несколько элементов, которые могут быть вам полезны:

  • листовка может изначально загружать geojson файлы. Таким образом, вы можете преобразовать файлы kml в geojson с помощью python или использовать плагин leaflet (например, leaflet-omnivore) для чтения файлов kml с листовкой. В качестве первого шага я бы начал с этого: веб-страницы, которая показывает один из ваших маршрутов полета. Данные пути - это просто файл геоджона, который загружается вашим приложением.

  • тогда, если вы хотите, чтобы ваше приложение отфильтровывало траектории полета по некоторым критериям, и если у вас много таких файлов, вам понадобится серверная часть. Это означает сервер с базой данных, потенциально с гео-возможностями (postGIS, mongoDB, ... их много) и серверное приложение. Итак, ваше переднее приложение (с js и листовкой) собирается отправить некоторые запросы на ваш сервер (пожалуйста, пришлите мне файл для рейса XYZ), серверная часть получит этот запрос, выполнит запрос к базе данных, получит файл и отправит его обратно клиенту. Клиент отображает данные на карте.

Если вы хотите написать бэкэнд на Python, вы можете взглянуть на такие фреймворки, как Django или Flask .

Это много инструментов, но если вы начнете с листовки js +, вы будете рады быстро увидеть карту и скоро вам будет что показать. Тогда вы можете начать смотреть на бэкэнд-часть. Если вам удастся завершить этот проект ... вы определенно заслуживаете эту должность младшего разработчика.

...