8 votos

¿Capas espejo en QGIS?

Me gustaría saber si hay alguna forma de reflejar capas en QGIS. Mi proyecto actual es un poco difícil de explicar... Estoy excavando el interior de una gran olla y, al final, tendré un conjunto de planos que se corresponden con las sucesivas capas que voy exponiendo a medida que avanzo en la excavación. Sin embargo, por razones prácticas, tengo que hacer este trabajo al revés (es decir, la excavación comenzó desde el fondo de la olla).

Todos mis registros se editarán posteriormente en QGIS, por lo que, para que sean más comprensibles para otras personas, tendré que invertirlos. No sólo invertir su orden, sino también darles la vuelta horizontalmente, obteniendo una imagen reflejada del plano de cada capa.

Sé que podría hacerlo con un software de procesamiento de imágenes, pero me preguntaba si hay alguna forma de hacerlo dentro del entorno QGIS - esto probablemente me ahorraría tiempo de procesamiento de imágenes y lo convertiría en un flujo de trabajo más ágil.

¿Alguien tiene alguna idea al respecto?

0 votos

¿Sus planes son imágenes? ¿Y tiene una imagen por cada etapa? Utiliza cualquier programa de dibujo, como el Paint básico de Windows, para voltearlas (horizontal o verticalmente). Si usted tiene un montón de planes, algo lo que puede hacer en lote - como GIMP de código abierto o IrfanView libre. El orden de los planos depende sólo de cómo se ordenan las imágenes (capas) en QGIS - que es totalmente de usted.

10voto

Nick Puntos 3115

Como usted indica, usted podría hacer esto en el software de procesamiento de imágenes, pero si quieres hacerlo en QGIS para un flujo de trabajo sin problemas (tal vez utilizando un script o la creación de un modelo de procesamiento), puede voltear sus imágenes utilizando la función Grass r.flip . Sin embargo, esto es en Grass 7 por lo que tendría que instalarlo ya que todavía no es estándar en QGIS.

Además, hay Orientación de la cuadrícula SAGA que ofrece las opciones de voltear, reflejar e invertir. La documentación parece escasa, pero un rápido experimento muestra que "voltear" invierte la imagen verticalmente, "reflejar" la horizontalmente, pero "invertir" hace un "negativo" de la imagen (sospecho que no es lo que quieres, pero "voltear" y "reflejar" parecen prometedores para tu uso).

EDITAR (re comentarios): Para reflejar, rotar o recubrir datos vectoriales se necesitan herramientas afines. QGIS dispone de varias herramientas para ello. Hay un par de plugins (' Affine y Vector Bender ') y Grass tiene v.transform . Necesita calcular su matriz de transformación para Affine o v.transform. Véase esta entrada para el primero. Alternativamente, si está muy familiarizado con las matrices de transformación (y le da pereza calcular las matrices de transformación), utilice la función Vector Bender plugin - aunque creo que sería más difícil trabajar sus líneas de espejo para este caso de uso particular (por lo demás es brillante).

Utilizando el plugin Affine y una matriz de transformación de
1,0,0
0,-1,0

Obtengo lo siguiente (azul = antes, amarillo = después): enter image description here

En realidad, la matriz gira en torno al eje Y, por lo que necesitarías una transformación lateral igual a la extensión norte-sur de tus datos para girar "en su sitio". Así, en mi caso mi matriz real basada en este shapefile particular, sería
1,0,0
0,-1,964530.15

(es decir, estoy volteando hacia abajo en el eje Y y luego desplazando los datos de nuevo hacia arriba)

EDIT #2 (Una idea tardía):
Si está realizando un proceso por lotes, puede obtener la extensión a través de GDAL con bastante facilidad y automatizar la creación de la matriz de transformación. Sin embargo, si usted está haciendo un proceso semi-manual, en su caso de uso puede simplificar las cosas mediante la unión de un simple polígono con los datos de cada capa. De este modo, la matriz de transformación siempre será la misma, ya que la extensión total de los datos siempre estará dentro del cuadro delimitador, independientemente de lo que se digitalice en la capa.

0 votos

MappaGnosis, tu sugerencia es bastante interesante (Grid Orientation Module) - sin embargo, sólo funciona con datos raster, yo estaba buscando algo que pudiera usarse también con datos vectoriales. En cuanto a las secuencias de comandos y modelos de procesamiento, no estoy tan versado en el arte de secuencias de comandos como para hacerlo de esa manera ...

0 votos

Sólo he mencionado los rasterizados porque en su pregunta hacía referencia a las imágenes. Sin embargo, si desea voltear vectores también, también es posible mediante herramientas afines. Ver mis ediciones anteriores.

0 votos

Claro, lo entiendo - fui yo quien no fue lo suficientemente claro con lo que tengo que hacer. Tus nuevas adticiones a tu comentario me parecen geniales. Sólo podré probarlo dentro de unos días, porque ahora mismo no tengo acceso a los datos, pero sin duda lo intentaré y te contaré cómo me ha ido después. Muchas gracias.

10voto

tobes Puntos 19

Sí, puede reflejar capas (o características individuales). Para ello es necesario QGIS >= 2.10 . No es necesario modificar los datos de entrada, sólo la forma en que se presentan. Esto se hace utilizando efectos de capa como se muestra aquí para Alaska:

enter image description here

0 votos

Muchas gracias por tu respuesta, pero no consigo encontrar dónde acceder a esa ventana de "Propiedades del efecto". Entiendo por la imagen que has compartido que está dentro de la pestaña Estilo de las propiedades de Capa, pero no consigo averiguar dónde está. Actualmente estoy ejecutando QGIS 2.8.2.

1 votos

Necesitas la versión 2.10 para poder utilizar los efectos.

0 votos

Después de publicar mi comentario, me pregunté si sería así, desinstalé 2.8.2, instalé 2.10 y ¡voilá! ¡Gracias por vuestra ayuda!

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X