Створення анімованої карти маршруту в QGIS?


22

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

Я знайшов на цьому сайті два запитання ( Показати маршрут, пройдений автомобілем як анімацію та Інтерполювати точки між координатами для плавної анімації на картах google або openmap ), які вирішують подібні проблеми, але обидва вони базуються на інтеграції Карт Google або OpenLayers та потребують кодування .

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

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

Як я можу все це скласти разом чи, можливо, є більш елегантний спосіб досягти цього ефекту, використовуючи засоби, які є у вільному доступі?


Ласкаво просимо на gis.stackexchange! Зверніть увагу, що хороший запитання на цьому веб-сайті, як очікується, покаже певну ступінь досліджень з вашого боку, тобто те, що ви спробували та, - якщо це застосовно - код досі. Для отримання додаткової інформації ви можете перевірити наш faq .
underdark

Привіт @underdark, я поставив це як питання запитання і відповіді, вважаючи, що відповідь надає докази досліджень. Я розумію, що питання все-таки має бути окремим як хороше питання, тому я його розширив. Дякуємо за відмінний плагін Time Manager, який був невід’ємною частиною вирішення цієї проблеми!
rudivonstaden

1
Це дуже корисно, майже саме те, що я намагаюся досягти. Однак, чи є спосіб зробити так, щоб панорама карти дотримувалася маршруту? Я хочу показати маршрут запропонованої дороги, який потребує переміщення карти, щоб показати достатньо деталей у необхідному масштабі. Я витратив дуже багато часу на гуглінг, і я просто не можу розібратися, як зробити цей останній крок. Якщо ви подивитесь відео Індіана Джонса, то побачите, що карта також є
Роб Кемп

1
Вибачте, що я пропустив, що ви відповіли самі. Я люблю відповідь і дякую за розширення питання!
подорож

Відповіді:


36

Крок 1. Діліться маршрутом у Картах Google

На Картах Google створіть маршрут, а потім поділіться ним, щоб отримати посилання на напрямки.

Поділитися посиланням на карті на Картах Google

Крок 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: Збережіть як простір шару

Ви не зможете використовувати шар GPX так, як є, тому що він не може редагуватися. Також, здається, є помилка, яка обрізає часові позначки, якщо ви збережете як Shapefile. Файли просторових програм, здається, добре працюють. Виберіть шар на панелі "Шари" та виберіть у меню "Шар> Зберегти як ...". Укажіть "Простір" як формат і переконайтесь, що вибрано "Додати збережений файл на карту".

Крок 6: Виправити символіку

Двічі клацніть по шару на панелі шарів, щоб відкрити властивості, і натисніть на вкладку Стиль. Клацніть на стиль "Простий маркер" і виберіть відповідний колір для вашого "лазерного" стилю. Змініть розмір на 1,5 (або за власними уподобаннями). Встановіть стиль контуру на "Без ручки".

Оновлення символіки

Крок 7: Додайте модуль Time Manager до QGIS

Якщо ви ще цього не зробили, додайте плагін Time Manager до QGIS. Перейдіть до розділу "Плагіни> Керування та встановлення плагінів ...", виберіть вкладку "Усі" та знайдіть "TimeManager" (одне слово). Переконайтеся, що встановлено прапорець поруч із іменем та натисніть "Встановити плагін".

Крок 8: Зареєструйте шар у Time Manager

Тепер ви повинні побачити панель Time Manager під полотном вашої карти. Натисніть кнопку «Налаштування», а потім «Додати шар». Вкажіть назву шару маршруту, виберіть атрибут "time" для початку часу та виберіть "No end time ..." для кінця часу.

Додайте шар у Менеджер часу

Крок 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.