É necessário adicionar rapidamente várias camadas de várias pastas ao projeto QGIS

12

Fiz o download de vários arquivos Zip de imagens (o conteúdo de cada um é jp2, jpg, jpw, xml, htm e .dbf, .prj, .sbn, .sbx, .shp, .shx) e gostaria de adicionar essas imagens rapidamente a meu projeto de trabalho no QGIS 2.6.1. Estou tentando evitar a navegação e adicionar cada arquivo separadamente. Como cada arquivo está em uma pasta diferente, não consegui encontrar uma maneira de adicionar vários arquivos de uma só vez.

reevesii
fonte
Então você tem arquivos zip em suas pastas ou já extraiu o conteúdo dos arquivos zip? Estou elaborando uma resposta para o último caso. Receio que o caso anterior exija um pouco de script (Python).
Germán Carrillo
Eu já extraí conteúdo.
reevesii

Respostas:

23

O que você precisa é o plug - in QGIS, Carregue Todos . Além de carregar arquivos de vários diretórios ao mesmo tempo, você pode:

  • Reflita a estrutura de diretórios no Índice QGIS (por meio de grupos de camadas aninhados).
  • Aplique filtros alfanuméricos para carregar apenas as camadas que correspondem ao seu filtro (pense em expressões regulares).
  • Carregue apenas determinada geometria ou tipo de varredura (por exemplo, apenas vetores de polígonos ou rasters multibanda).
  • Carregue apenas determinadas extensões de arquivo (por exemplo, apenas arquivos .shp).
  • Carregue apenas camadas que estejam dentro ou que cruzem uma determinada caixa delimitadora.

e mais. Dê uma olhada em https://github.com/gacarrillor/loadthemall para obter mais detalhes.

insira a descrição da imagem aqui

Germán Carrillo
fonte
@ Germán Carrillo Parece o plugin perfeito para minhas necessidades, mas quando tento carregar os arquivos, recebo o erro: "Não há arquivos KML para carregar do diretório base com este filtro. Altere esses parâmetros e tente novamente". Estou usando o QGIS 2.14.2, todos os filtros estão desativados e o mapa que eu selecionei contém dois mapas com um arquivo kml cada (apenas para testar, tenho um conjunto de dados maior para importar).
Hannes Ledegen
@HannesLedegen Você tentou com o filtro 'Interesses' em vez de 'Contém'? Se isso não funcionar, abra um novo problema na página do GitHub do projeto, descrevendo tudo em detalhes.
Germán Carrillo
2

Como alternativa ao uso de um plug-in, você pode fornecer ao comando Adicionar camada uma lista de arquivos delimitada por ponto-e-vírgula. Você pode criar essa lista da seguinte maneira:

cd /d <Path_to_the_directory_where_your_files_are>
dir *.shp /s /b >All.txt

Isso fornece um arquivo chamado All.txt, que contém os caminhos para todos os arquivos com uma extensão específica (você pode usar uma máscara diferente dependendo dos arquivos que possui), onde cada arquivo está em uma nova linha.

D:\Data\01\data01_1.shp
D:\Data\01\data01_2.shp
D:\Data\02\data02_1.shp
D:\Data\02\data02_2.shp

Em seguida, substitua todas as novas linhas ;usando um editor de texto (como o Notepad ++ ) e cole o resultado na Add Vector Layer...caixa de diálogo.

Para o Notepad ++, você precisa alterar o modo de substituição para Estendido e substituir \r\npor ;. Você obteria um arquivo parecido com este:

D:\Data\01\data01_1.shp;D:\Data\01\data01_2.shp;D:\Data\02\data02_1.shp;D:\Data\02\data02_2.shp
Alex
fonte
0

No Linux, você pode extrair uma lista de .shparquivos e alimentá-la diretamente na caixa de diálogo "Importar vetor":

#on the command line
ls /home/yourpath/*/*shp|tr "\n" '@'|sed 's/@/" "/g'|sed 's/^/"/g'

insira a descrição da imagem aqui

Achei isso útil no QGIS Docker , porque, por algum motivo, o plug-in "Carregar todos" não estava mostrando sua caixa de diálogo.

RafDouglas
fonte