Criando um mapa de rota animado no QGIS?


22

Usando o QGIS e outras ferramentas gratuitas, como posso usar uma rota do Google Maps para criar uma animação de rota no estilo dos filmes de Indiana Jones ( https://www.youtube.com/watch?v=5TY5Fp6O5iM )?

Encontrei duas perguntas neste site ( Mostrar rota percorrida pelo veículo como animação e Interpolar pontos entre coordenadas para uma animação suave no google maps ou openmap ) que lidam com problemas semelhantes, mas ambas são baseadas nas integrações do Google Maps ou OpenLayers e exigem codificação .

Encontrei um artigo muito útil sobre como usar o plug-in Time Manager QGIS para mapear trajetórias que desaparecem. No meu caso, eu não precisaria do caminho para desaparecer com o tempo, mas esse método poderia fornecer uma base útil para obter o efeito de laser que eu quero.

Uma complicação adicional é que, embora conheça a rota que quero animar, não tenho dados reais para usar como entradas para a animação. Eu poderia obter uma rota do Google Maps, mas isso não inclui os carimbos de data / hora. Por isso, eu precisaria de uma maneira de animar as etapas em ordem ou, de alguma forma, adicionaria um carimbo de data / hora.

Como posso juntar tudo isso ou existe talvez uma maneira mais elegante de obter esse efeito usando ferramentas disponíveis gratuitamente?


Bem-vindo ao gis.stackexchange! Observe que uma boa pergunta neste site deve mostrar algum grau de pesquisa de sua parte, ou seja, o que você tentou e, se aplicável, o código até o momento. Para mais informações, você pode conferir nossas perguntas frequentes .
underdark

Olá @underdark, postei isso como uma pergunta de perguntas e respostas, pensando que a resposta fornece as evidências da pesquisa. Entendo que a pergunta ainda precisa se manter sozinha como uma boa pergunta, por isso a ampliei. Obrigado pelo excelente plug-in do Time Manager, que foi parte integrante da solução desse problema!
Rudivonstaden

1
Isso é muito útil, quase exatamente o que estou tentando alcançar. No entanto, existe alguma maneira de fazer o mapa girar para seguir a rota? Quero mostrar a rota de uma estrada proposta, que exigirá a movimentação do mapa para mostrar detalhes suficientes na escala necessária. Passei muito tempo pesquisando no Google e simplesmente não consigo descobrir como fazer essa etapa final. Se você assistir ao vídeo de Indiana Jones, verá que o mapa também!
Rob Kemp

1
Desculpe, perdi o fato de você ter se respondido. Adoro a resposta e obrigado por expandir a pergunta!
underdark

Respostas:


36

Etapa 1: compartilhe sua rota no Google Maps

No Google Maps , crie a rota e compartilhe-a para obter um link para as direções.

Compartilhar link do mapa no Google Maps

Etapa 2: converter a rota em um arquivo GPX

Usando o prático recurso de conversão no GPS Visualizer ( http://www.gpsvisualizer.com/convert_input ), cole o link que você copiou do Google Maps, selecione GPX como o formato de saída e faça o download do arquivo.

Converta em GPX usando o GPS Visualizer

Etapa 3: adicionar registros de data e hora à rota

Faça o upload do utilitário de data e hora do GPX para GOTOES ( http://gotoes.org/strava/Add_Timestamps_To_GPX.php ), especificando a hora de início, o fuso horário e a velocidade média. Faça o download do arquivo resultante.

Adicionar timestamps

Etapa 4: carregar os waypoints da trilha no QGIS

Adicione o arquivo GPX com carimbo de data e hora como uma camada vetorial no QGIS. Selecione a camada track_points quando solicitado para qual camada carregar do arquivo GPX. Isso deve carregar uma trilha de trilha de waypoints ao longo da rota.

Você também deve adicionar uma camada base para adicionar contexto ao seu mapa. O QuickMapServices é útil aqui (consulte Adicionando mapas base do Google ou Bing no QGIS? )

Etapa 5: Salvar como uma camada Spatialite

Você não poderá usar a camada GPX como está, porque não é editável. Também parece haver um bug que trunca os carimbos de data e hora se você salvar como um Shapefile. Arquivos espacialmente parecem funcionar bem, no entanto. Selecione a camada no painel Camadas e escolha 'Camada> Salvar como ...' no menu. Especifique 'Spatialite' como o formato e verifique se 'Adicionar arquivo salvo no mapa' está selecionado.

Etapa 6: corrigir simbologia

Clique duas vezes na camada no painel de camadas para abrir as propriedades e clique na guia Estilo. Clique no estilo 'Marcador simples' e escolha uma cor apropriada para a sua rota estilizada com "laser". Altere o tamanho para 1,5 (ou de sua preferência). Defina o estilo do contorno como 'Sem caneta'.

Simbologia de atualização

Etapa 7: adicione o plug-in do Time Manager ao QGIS

Se você ainda não o fez, adicione o plug-in do Time Manager ao QGIS. Vá para 'Plugins> Gerenciar e instalar plugins ...', selecione a guia 'Todos' e procure por 'TimeManager' (uma palavra). Verifique se a caixa de seleção ao lado do nome está marcada e clique em 'Instalar plugin'.

Etapa 8: registrar a camada no Time Manager

Agora você deve ver um painel do Time Manager sob a tela do mapa. Clique no botão 'Configurações' e, em seguida, em 'Adicionar camada'. Especifique o nome da camada de rota, escolha o atributo 'hora' para a hora de início e escolha 'Sem hora de término ...' para a hora de término.

Adicione a camada no Time Manager

Etapa 9: exportar vídeo

Escolha um tamanho de período de tempo apropriado para seus dados (cada quadro representará essa quantidade de tempo). Clique no botão play para testar as configurações. Clique no botão 'Exportar vídeo' para exportar (se você reproduziu a animação, mova o controle deslizante de volta para a posição inicial). Se você estiver no Windows, poderá exportar apenas uma série de imagens (pelo menos a partir da versão 2.2.4). Tudo bem, podemos usar outra ferramenta para combiná-los em um vídeo.

Etapa 10: compilar em uma animação

Copie o conteúdo da pasta de saída e cole no Windows Movie Maker (ou em qualquer outra ferramenta preferida). Selecione todas as imagens (clique em uma e, em seguida, pressione Ctrl + A para selecionar todas), clique no menu Editar e defina a duração de exibição da imagem adequadamente (cerca de 0,1 segundos por quadro). Use Arquivo> Salvar filme para salvar em um formato apropriado.

Exportar filme

O resultado deve ser algo como isto (convertido em um arquivo GIF depois):

Resultado

Não tenho uma boa técnica para seguir a linha e mover o próprio mapa. Pode ser necessário criar um novo plug-in ou script QGIS, ou possivelmente modificar o plug-in do Time Manager para centralizar a tela no ponto atual de cada quadro. Você pode aproximar o efeito no Windows Movie Maker usando as animações de panorâmica e zoom no menu Animações. Outro software de vídeo pode ter uma funcionalidade melhor para seguir um elemento móvel.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.