Создание анимированной карты маршрутов в QGIS?


22

Используя QGIS и другие бесплатные инструменты, как я могу использовать маршрут Google Maps для создания анимации маршрута в стиле фильмов Индианы Джонса ( https://www.youtube.com/watch?v=5TY5Fp6O5iM )?

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

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

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

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


Добро пожаловать в gis.stackexchange! Обратите внимание, что хороший вопрос на этом сайте, как ожидается, покажет некоторую степень исследования с вашей стороны, то есть то, что вы пробовали и - если применимо - код до сих пор. Для получения дополнительной информации вы можете проверить наш FAQ .
Подземье

Привет @underdark, я отправил это как вопрос и ответ, думая, что ответ обеспечивает доказательство исследования. Я понимаю, что вопрос все еще должен стоять в одиночестве как хороший вопрос, поэтому я расширил его. Спасибо за отличный плагин Time Manager, который был неотъемлемой частью решения этой проблемы!
rudivonstaden

1
Это очень полезно, почти то, чего я пытаюсь достичь. Но есть ли способ заставить карту перемещаться по маршруту? Я хочу показать маршрут предлагаемой дороги, которая потребует перемещения карты, чтобы показать достаточно деталей в требуемом масштабе. Я потратил очень много времени на поиски в Интернете и просто не могу понять, как сделать этот последний шаг. Если вы посмотрите видео «Индиана Джонс», то увидите, что на карте тоже!
Роб Кемп

1
Извините, я пропустил, что вы ответили сами. Я люблю ответ и спасибо за расширение вопроса!
Подземье

Ответы:


36

Шаг 1: Поделитесь своим маршрутом в Google Maps

В Google Maps создайте маршрут, а затем поделитесь им, чтобы получить ссылку на маршрут.

Поделиться ссылкой на карту в Google Maps

Шаг 2. Преобразование маршрута в файл GPX.

Используя функцию удобного преобразования в GPS Visualizer ( http://www.gpsvisualizer.com/convert_input ), вставьте ссылку, скопированную из Карт Google, выберите GPX в качестве выходного формата и загрузите файл.

Конвертировать в GPX с помощью GPS Visualizer

Шаг 3: Добавьте метки времени к маршруту

Загрузите утилиту временных меток GPX в GOTOES ( http://gotoes.org/strava/Add_Timestamps_To_GPX.php ), указав время начала, часовой пояс и среднюю скорость. Загрузите полученный файл.

Добавить метки времени

Шаг 4: Загрузите путевые точки трека в QGIS

Добавьте файл GPX с меткой времени в качестве векторного слоя в QGIS. Выберите слой track_points, когда будет предложено выбрать слой для загрузки из файла GPX. Это должно загрузить маршрут путевых точек вдоль маршрута.

Вы также должны добавить базовый слой, чтобы добавить контекст на карту. QuickMapServices полезен здесь (см. Добавление базовых карт от Google или Bing в QGIS? )

Шаг 5: Сохранить как слой Spatialite

Вы не сможете использовать слой GPX как есть, потому что он не редактируется. Также кажется, что есть ошибка, которая усекает временные метки, если вы сохраняете как Shapefile. Файлы Spatialite, похоже, работают хорошо. Выберите слой на панели «Слои» и выберите «Слой> Сохранить как ...» в меню. Укажите «Spatialite» в качестве формата и убедитесь, что выбран «Добавить сохраненный файл на карту».

Шаг 6: исправить символику

Дважды щелкните слой на панели слоев, чтобы открыть свойства, и щелкните вкладку «Стиль». Нажмите на стиль «Простой маркер» и выберите подходящий цвет для вашего маршрута в стиле «лазер». Измените размер до 1,5 (или ваши собственные предпочтения). Установите стиль контура «Нет пера».

Обновить символы

Шаг 7: Добавьте плагин Time Manager в QGIS

Если вы еще этого не сделали, добавьте плагин Time Manager в QGIS. Перейдите в «Плагины»> «Управление и установка плагинов ...», выберите вкладку «Все» и найдите «TimeManager» (одно слово). Убедитесь, что установлен флажок рядом с именем, и нажмите «Установить плагин».

Шаг 8: Зарегистрируйте слой в Time Manager

Теперь вы должны увидеть панель Time Manager под холстом карты. Нажмите на кнопку «Настройки», а затем «Добавить слой». Укажите имя слоя маршрута, выберите атрибут «время» для времени начала и выберите «Нет времени окончания ...» для времени окончания.

Добавьте слой в Time Manager

Шаг 9: Экспорт видео

Выберите подходящий размер временного интервала для ваших данных (каждый кадр будет представлять это количество времени). Нажмите кнопку воспроизведения, чтобы проверить настройки. Нажмите кнопку «Экспорт видео» для экспорта (если вы проигрывали анимацию, сначала убедитесь, что вы переместили ползунок обратно в начальную позицию). Если вы работаете в Windows, вы сможете экспортировать только серию изображений (по крайней мере, начиная с версии 2.2.4). Это нормально, мы можем использовать другой инструмент, чтобы объединить их в видео.

Шаг 10: Компилируем в анимацию

Скопируйте содержимое выходной папки и вставьте в Windows Movie Maker (или любой другой предпочтительный инструмент). Выделите все изображения (нажмите одно, а затем Ctrl + A, чтобы выбрать все), щелкните меню «Правка» и установите продолжительность отображения изображения соответствующим образом (около 0,1 секунды на кадр). Используйте Файл> Сохранить фильм, чтобы сохранить в соответствующем формате.

Экспорт фильма

Результат должен выглядеть примерно так (впоследствии преобразованный в файл GIF):

Результат

У меня нет хорошей техники для следования линии и панорамирования самой карты. Может потребоваться создать новый плагин или скрипт QGIS или, возможно, изменить плагин Time Manager, чтобы центрировать холст в текущей точке для каждого кадра. Вы можете приблизить эффект в Windows Movie Maker, используя анимацию панорамирования и масштабирования в меню «Анимации». Другое видео программное обеспечение может иметь лучшую функциональность для отслеживания движущегося элемента.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.