3 votos

El script personalizado de PyQGIS escribe el archivo como opcional

He tenido este problema en mi script personalizado en PyQGIS.

Creo la variable como entrada de esta manera:

##lista_formaciones_forestales_con_estrategia = file

En teoría esta es la forma correcta de escribir un parámetro no opcional como entrada, pero cuando abro mi script está escribiendo como opcional:

enter image description here

¿Es un problema con mi versión de QGIS? Mi versión de QGIS es la 2.16.1.

1voto

Mue Puntos 2469

No estoy seguro, pero la configuración de los parámetros por defecto para ambos Archivo y Carpeta se ajustan a True en algunas versiones recientes de QGIS (no estoy seguro de cuáles exactamente, pero he utilizado QGIS 2.16.1). Puede ver esta configuración desde el Script de GitHub [línea 503] :

def __init__(self, name='', description='', isFolder=False, optional=True, ext=None):

Lo que podemos hacer es cambiar

optional=True

a

optional=False

Puede encontrar este script en su procesamiento directorio. Por ejemplo, en mi Versión independiente de QGIS 2.16.1 el script reside en:

C:/Program Files/QGIS 2.16.1/apps/qgis/python/plugins/processing/core/parameters.py

A continuación, busque class ParameterFile(Parameter) para ver la función como se muestra en el enlace anterior y cambiar el valor booleano. El Archivo y Carpeta deberían ser requeridos por defecto. Y si quieres que sea opcional, utiliza el mismo método que antes (por ejemplo ##lista_formaciones_forestales_con_estrategia=optional file ).


(Nota: Es posible que tenga que mover el archivo "parameters.py" fuera de la carpeta, editar y guardar el archivo, y luego volver a insertarlo en la misma carpeta).

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