Me gustaría poder cortar polígonos como el siguiente, en QGIS, a una distancia establecida a cada lado de una característica especificada en otra capa, en este caso una línea de sendero desde el mapa maestro del sistema operativo.
De esta manera, efectivamente tendría un búfer a lo largo de las líneas que podría representar una red de paseo por el bosque, por ejemplo. En este caso, es una característica lineal muy simple, pero a menudo son mucho más complejas y pueden ser muy lentas de cortar. Idealmente, necesito conservar el polígono original, ya que esto también se utilizará.
¿Es posible cortar un polígono de esta manera, o tendría que crear los nuevos polígonos como amortiguadores a lo largo de la línea y luego cortarlos del polígono existente?
fuente
intersection()
lugar dedifference()
, le dará la parte almacenada. Pero me temo que no te ayuda a obtener ambas geometrías (diferencia e intersección) en una sola acción.Necesitará
buffer
la línea (ruta) seleccionada a la distancia que necesita y luego córtelas del otro polígono usandodifference
.Si era una operación que tenía que hacer muy a menudo, entonces valdría la pena escribir un script de Python para llevar a cabo ambas operaciones juntas.
fuente
En las versiones más nuevas de QGIS (estoy usando 3.2.1) ahora es posible hacer esto mucho más rápido y fácilmente usando la función 'Desplazamiento' dentro de la barra de herramientas de ajuste (desde el menú desplegable al lado de 'Habilitar rastreo'):
fuente