Czy tworzysz animowaną mapę trasy w QGIS?


22

Używając QGIS i innych bezpłatnych narzędzi, w jaki sposób mogę użyć trasy z Google Maps, aby utworzyć animację trasy w stylu filmów z Indiany Jonesa ( https://www.youtube.com/watch?v=5TY5Fp6O5iM )?

Znalazłem dwa pytania na tej stronie ( Pokaż trasę przejechanego pojazdu jako animację i Interpoluj punkty między współrzędnymi dla płynnej animacji na mapach Google lub OpenMap ), które dotyczą podobnych problemów, ale oba z nich są oparte na integracji z Google Maps lub OpenLayers i wymagają kodowania .

Znalazłem bardzo przydatny artykuł na temat używania wtyczki QGIS Time Managera do mapowania trajektorii zanikających. W moim przypadku ścieżka nie musiałaby zanikać w miarę upływu czasu, ale ta metoda może stanowić użyteczną podstawę do uzyskania pożądanego efektu laserowego.

Kolejną komplikacją jest to, że chociaż znam trasę, którą chcę animować, nie mam żadnych rzeczywistych danych, które mogłyby posłużyć jako dane wejściowe do animacji. Mogę uzyskać trasę z Map Google, ale nie obejmuje to znaczników czasu, więc albo potrzebuję sposobu na animację kroków w kolejności, albo w inny sposób dodaję znacznik czasu.

Jak mogę to wszystko połączyć, czy może istnieje bardziej elegancki sposób na osiągnięcie tego efektu za pomocą narzędzi, które są swobodnie dostępne?


Witamy w gis.stackexchange! Należy pamiętać, że dobre pytanie na tej stronie powinno wykazać pewien stopień badań z twojej strony, tj. To, co próbowałeś i - jeśli dotyczy - kod do tej pory. Aby uzyskać więcej informacji, możesz sprawdzić nasze często zadawane pytania .
podmrok

Cześć @underdark, zamieściłem to pytanie jako pytanie i odpowiedź, myśląc, że odpowiedź stanowi dowód badań. Rozumiem, że pytanie wciąż musi być samodzielne jako dobre pytanie, więc je rozwinąłem. Dziękujemy za doskonałą wtyczkę Time Manager, która była integralną częścią rozwiązania tego problemu!
rudivonstaden

1
Jest to bardzo pomocne, prawie dokładnie to, co próbuję osiągnąć. Czy jest jednak jakiś sposób na przesunięcie mapy, aby podążała trasą? Chcę pokazać trasę proponowanej drogi, która będzie wymagać przesunięcia mapy, aby pokazać wystarczająco dużo szczegółów w wymaganej skali. Spędziłem okropnie dużo czasu na googlowaniu i po prostu nie mogę pojąć, jak zrobić ten ostatni krok. Jeśli obejrzysz film Indiana Jones, zobaczysz, że mapa również się przesuwa!
Rob Kemp

1
Przepraszam, że tęskniłem za tym, że sam odpowiedziałeś. Uwielbiam odpowiedź i dziękuję za rozszerzenie pytania!
podmrok

Odpowiedzi:


36

Krok 1: Udostępnij swoją trasę w Mapach Google

W Mapach Google utwórz trasę, a następnie udostępnij ją, aby uzyskać link do wskazówek dojazdu.

Udostępnij link do mapy w Mapach Google

Krok 2: Konwertuj trasę na plik GPX

Korzystając z poręcznej funkcji konwersji w GPS Visualizer ( http://www.gpsvisualizer.com/convert_input ), wklej link skopiowany z Google Maps, wybierz GPX jako format wyjściowy i pobierz plik.

Konwertuj na GPX za pomocą GPS Visualizer

Krok 3: Dodaj znaczniki czasu do trasy

Prześlij GPX do narzędzia znaczników czasu GOTOES ( http://gotoes.org/strava/Add_Timestamps_To_GPX.php ), określając czas rozpoczęcia, strefę czasową i średnią prędkość. Pobierz wynikowy plik.

Dodaj znaczniki czasu

Krok 4: Załaduj punkty trasy w QGIS

Dodaj plik GPX ze znacznikiem czasowym jako warstwę wektorową w QGIS. Wybierz warstwę track_points po wyświetleniu monitu o załadowanie warstwy z pliku GPX. Powinno to załadować ścieżkę nawigacyjną punktów trasy na trasie.

Powinieneś także dodać warstwę podstawową, aby dodać kontekst do mapy. Przydatna jest QuickMapServices (patrz Dodawanie map bazowych z Google lub Bing w QGIS? )

Krok 5: Zapisz jako warstwę Spatialite

Nie będzie można używać warstwy GPX w obecnej postaci, ponieważ nie można jej edytować. Wydaje się również, że występuje błąd, który skraca znaczniki czasu, jeśli zapisujesz jako plik kształtu. Pliki spatialite wydają się jednak działać dobrze. Wybierz warstwę w panelu Warstwy i wybierz z menu polecenie „Warstwa> Zapisz jako ...”. Podaj format „Spatialite” i upewnij się, że zaznaczono opcję „Dodaj zapisany plik do mapy”.

Krok 6: Napraw symbolizację

Kliknij dwukrotnie warstwę w panelu warstw, aby otworzyć właściwości, a następnie kliknij kartę Styl. Kliknij styl „Prostego markera” i wybierz odpowiedni kolor dla swojej trasy „laserowej”. Zmień rozmiar na 1,5 (lub własne preferencje). Ustaw styl konturu na „Brak pióra”.

Zaktualizuj symbolikę

Krok 7: Dodaj wtyczkę Time Manager do QGIS

Jeśli jeszcze tego nie zrobiłeś, dodaj wtyczkę Time Manager do QGIS. Przejdź do „Wtyczki> Zarządzaj i instaluj wtyczki ...”, wybierz zakładkę „Wszystkie” i wyszukaj „TimeManager” (jedno słowo). Upewnij się, że pole wyboru obok nazwy jest zaznaczone, i kliknij „Zainstaluj wtyczkę”.

Krok 8: Zarejestruj warstwę w Menedżerze czasu

Powinieneś teraz zobaczyć panel Time Managera pod kanwą mapy. Kliknij przycisk „Ustawienia”, a następnie „Dodaj warstwę”. Podaj nazwę warstwy trasy, wybierz atrybut „czas” dla godziny rozpoczęcia i wybierz „Bez godziny zakończenia ...” dla godziny zakończenia.

Dodaj warstwę w Menedżerze czasu

Krok 9: Eksportuj wideo

Wybierz odpowiedni rozmiar ramy czasowej dla swoich danych (każda ramka będzie reprezentować ten czas). Kliknij przycisk odtwarzania, aby przetestować ustawienia. Kliknij przycisk „Eksportuj wideo”, aby wyeksportować (jeśli odtworzyłeś animację, najpierw przesuń suwak z powrotem do pozycji początkowej). Jeśli korzystasz z systemu Windows, będziesz mógł eksportować tylko serię obrazów (przynajmniej od wersji 2.2.4). W porządku, możemy użyć innego narzędzia, aby połączyć je w wideo.

Krok 10: Skompiluj w animację

Skopiuj zawartość folderu wyjściowego i wklej do programu Windows Movie Maker (lub innego preferowanego narzędzia). Wybierz wszystkie obrazy (kliknij jeden, a następnie Ctrl + A, aby zaznaczyć wszystkie), kliknij menu Edycja i odpowiednio ustaw czas wyświetlania obrazu (około 0,1 sekundy na klatkę). Użyj Plik> Zapisz film, aby zapisać w odpowiednim formacie.

Eksportuj film

Wynik powinien wyglądać mniej więcej tak (następnie przekonwertowany na plik GIF):

Wynik

Nie mam dobrej techniki podążania za linią i przesuwania samej mapy. Może to wymagać utworzenia nowej wtyczki lub skryptu QGIS lub modyfikacji wtyczki Time Manager, aby wyśrodkować obszar roboczy na bieżącym punkcie dla każdej ramki. Możesz przybliżyć efekt w programie Windows Movie Maker, używając animacji przesuwania i powiększania w menu Animacje. Inne oprogramowanie wideo może mieć lepszą funkcjonalność do śledzenia ruchomego elementu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.