Espelhando camadas no QGIS?

8

Gostaria de saber se existe alguma maneira de espelhar camadas no QGIS. Meu projeto atual é um pouco difícil de explicar ... Estou escavando o interior de uma panela grande e, no final, terei um conjunto de planos que correspondem às camadas sucessivas que estou expondo à medida que prossigo com o escavação. No entanto, por razões práticas, eu tenho que fazer esse trabalho de cabeça para baixo (ou seja, a escavação começou do fundo da panela).

Todos os meus registros serão editados posteriormente no QGIS; portanto, para tornar mais compreensível para outras pessoas, precisarei revertê-los. Não apenas invertendo a ordem, mas também invertendo-as horizontalmente, obtendo uma imagem espelhada do plano de cada camada.

Sei que poderia fazê-lo com software de processamento de imagem, mas fiquei pensando se há alguma maneira de fazê-lo no ambiente QGIS - isso provavelmente me pouparia tempo de processamento de imagem e o tornaria um fluxo de trabalho mais simplificado.

Alguém tem alguma idéia sobre isso?

TTome
fonte
Seus planos são imagens? E você tem uma imagem por cada estágio? Basta usar qualquer software de desenho como o Paint básico no Windows para invertê-los (horizontal ou verticalmente). Se você tem muitos planos, algo que pode ser feito em lote - como o GIMP de código-fonte aberto ou o IrfanView gratuito. A ordem dos planos depende apenas de como você solicita imagens (camadas) no QGIS - isso depende totalmente de você.
Miro

Respostas:

9

Sim, você pode espelhar camadas (ou recursos individuais). Isso requer QGIS> = 2.10 . Na verdade, não é necessário modificar os dados de entrada, apenas como são apresentados. Isso é feito usando efeitos de camada, como mostrado aqui no Alasca:

insira a descrição da imagem aqui

underdark
fonte
Muito obrigado pela sua resposta, mas não estou conseguindo encontrar onde acessar a janela "Propriedades do efeito". Pela imagem que você compartilhou, entendo que está dentro da guia Estilo das propriedades da camada, mas não consigo descobrir onde está. Atualmente, estou executando o QGIS 2.8.2.
TTome
1
Você precisa da versão 2.10 para poder usar efeitos.
Underdark
Depois de postar meu comentário, me perguntei se seria esse o caso, desinstalado o 2.8.2, instalado o 2.10 e pronto! Obrigado pela ajuda!
TTome
2
E como você pode fazer isso no QGIS> 3.0?
Sk1me #
10

Como você afirma, você pode fazer isso no software de processamento de imagens, mas se quiser fazê-lo no QGIS para obter um fluxo de trabalho tranquilo (talvez usando um script ou criando um Modelo de processamento), poderá inverter suas imagens usando a função Grass r.flip . No entanto, como está no Grass 7, você precisará instalá-lo, pois ainda não é padrão no QGIS.

Além disso, existe a ferramenta de orientação de grade da SAGA , que oferece opções de inversão, espelho e inversão. A documentação parece escassa para isso, mas um experimento rápido mostra que 'flip' inverte a imagem verticalmente, 'mirror' inverte a imagem horizontalmente, mas invert faz um 'negativo' da imagem (então não é o que você deseja, eu suspeito - mas inverter e espelho parecem promissores para o seu uso).

EDITAR (re comentários): para espelhar, girar ou de outra forma 'dados em folha de borracha', você precisa de ferramentas afins. O QGIS possui várias ferramentas para isso. Existem alguns plugins (' Affine' e ' Vector Bender') e o Grass possui v.transform. Você precisa calcular sua matriz de transformação para Affine ou v.transform. Veja este post para o primeiro. Como alternativa, se você está familiarizado com rasters de borracha (e com preguiça de calcular matrizes de transformação), use o Vector Benderplug-in - embora eu ache que seria mais difícil calcular suas linhas de espelho para esse caso de uso específico (caso contrário, é brilhante).

Usando o plugin Affine e uma matriz de transformação de
1,0,0
0, -1,0

Recebo o seguinte (azul = antes, amarelo = depois): insira a descrição da imagem aqui

A matriz aqui está realmente girando sobre o eixo Y, portanto, você precisará de uma transformação lateral igual à extensão norte-sul dos seus dados para virar 'no lugar'. Portanto, no meu caso, minha matriz real baseada nesse shapefile em particular seria
1,0,0
0, -1,964530.15

(ou seja, estou girando para baixo no eixo Y e depois mudando os dados de volta)

EDIT # 2 (uma reflexão tardia):
se você estiver executando um processo em lote, poderá obter a extensão do GDAL com bastante facilidade e automatizar a criação da matriz de transformação. No entanto, se você estiver executando um processo semi-manual, no seu caso de uso, poderá simplificar as coisas unindo um polígono de caixa delimitadora simples com os dados de cada camada. Dessa forma, sua matriz de transformação sempre será a mesma que a extensão total de seus dados sempre estará dentro da sua caixa delimitadora, independentemente do que você realmente digitalize na camada.

MappaGnosis
fonte
MappaGnosis, a sua é uma sugestão bastante interessante (Grid Orientation Module) - no entanto, ela só funciona com dados rasterizados, eu estava procurando por algo que pudesse ser usado com dados vetoriais também. Em relação roteiros e processamento de modelos, eu não sou tão bem versados na arte de scripting como fazê-lo dessa maneira ...
TTome
Eu mencionei apenas rasters porque você se referiu às imagens na sua pergunta. No entanto, se você também deseja inverter vetores, também é possível por ferramentas afins. Veja minhas edições acima.
MappaGnosis 17/07/2015
Claro, eu entendo - fui eu quem não foi suficientemente claro com o que eu preciso fazer. Suas novas adições ao seu comentário parecem ótimas. Só poderei testá-lo em alguns dias, porque não tenho acesso aos dados no momento, mas certamente tentarei - informarei como foram depois. Muito Obrigado!
TTome