Tenho alguns projetos QGIS que utilizo há muito tempo, adicionando e removendo camadas, atualizando referências a arquivos excluídos ou movidos etc.
Abrindo o arquivo qgs com um editor de texto, vejo que ele contém inúmeras referências a arquivos diferentes, e essas referências não são mostradas no painel da árvore Camada.
Eu tenho três casos diferentes: referências a arquivos existentes, referências a arquivos ausentes, referências a conexões com o banco de dados. Soube disso quando abri meu projeto em outra máquina, e o QGIS relatou uma falta de conexão com o banco de dados para tabelas vetoriais não presentes na visualização em árvore de camadas.
A exclusão manual de referências do arquivo qgs resolveu o problema, mas estou gerenciando grandes projetos e é quase impossível verificar manualmente a consistência do projeto. Eu tentei o plug-in "Remover camadas vazias", mas as que estou tentando remover não são camadas vazias.
Existe alguma maneira de 'limpar' o arquivo qgis?
fonte
Setting--> Project Properties-->save paths-->relative
Cheers NRespostas:
As camadas em questão estão no registro de camadas, mas não na legenda .
O script python a seguir remove todas as camadas carregadas, mas não mostradas na legenda.
Removendo as camadas:
Ele deve ser executado no console python dentro do QGIS. Após aplicá-lo, você pode verificar a operação, verificando se as camadas foram removidas de Arquivo (Projeto na versão 2.0) => Propriedades do projeto => Camadas identificáveis . As alterações não são salvas automaticamente
Ao adicionar a seguinte linha no final, as alterações também serão salvas automaticamente.
Faça uma cópia de backup do seu arquivo de projeto (.qgs) antes de substituí-lo após aplicar esse script.
Para o QGIS 1.8, é necessário executar a seguinte linha inicialmente:
fonte
Além de muitas outras funções úteis, o plug-in chamado " Layer Board " (disponível no instalador do plug-in) possui um botão interno para "Remover camadas fantasmas" que resolve esse problema.
Além do botão de um clique para remover as camadas fantasmas, ele também permite exibir e remover camadas individuais em uma boa interface gráfica que lista cada camada e suas propriedades. Você pode selecionar qualquer uma dessas camadas individuais da tabela e clicar no botão "Remover camada" para resolver cada problema individualmente, se desejar.
No meu caso, a capacidade de remover referências de camadas individuais foi muito importante, porque eu tinha algumas "camadas fantasmas" que tinham o mesmo nome, mas foram referenciadas 2-3 vezes no registro. Usei a placa de camada para remover as entradas corretas individualmente e voltar à referência correta de camada única.
fonte