3 votos

Eliminación del shapefile de entrada después de ser utilizado en el modelador de QGIS

Tengo un shapefile que se está utilizando como entrada en el inicio de un modelo. El modelo es muy simple, pero hace un modelo mucho más grande.

La entrada se reproyecta en el primer paso pero no se necesita nunca más. ¿Hay alguna forma de eliminar ese shapefile de forma permanente de mi ordenador dentro del propio modelador?

2voto

Mue Puntos 2469

Creo que la única manera de hacerlo actualmente es escribir un script personalizado que elimina la capa de la tabla de contenidos y luego borra el archivo shape.

Puedes crear uno de:

Processing Toolbox > Scripts > Tools > Create new script

Entonces usa algo como lo siguiente:

##Example=name
##Layer_to_delete=vector

from qgis.core import QgsMapLayerRegistry, QgsVectorFileWriter

layer = processing.getObject(Layer_to_delete)
QgsMapLayerRegistry.instance().removeMapLayer(layer.id())
QgsVectorFileWriter.deleteShapeFile(layer.source())

Guarde el script en su /.qgis2/processing/scripts directorio. A continuación, añada el script personalizado de la lista de algoritmos a su modelo, seleccione, la capa de entrada como el Layer to delete y establecer el Reproyectar capa como la herramienta algoritmo de los padres (el script se ejecutará cuando la herramienta haya terminado):

Example model


Cuando se ejecuta el modelo, una vez que el Reproyectar capa ha terminado, la capa de entrada seleccionada debe ser eliminada de la interfaz y borrada ( ¡asegúrese de guardar copias de seguridad! )

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