[QGIS-it-user] problema con python qgis
Giacomo Fontanelli
giacomofontanelli76 a gmail.com
Gio 1 Ago 2019 08:08:03 PDT
Ciao Matteo e grazie per i consigli
Ho trovato la soluzione:
Con QGIS 2.x i raster layer in INPUT erano dati sottoforma di una stringa
con questa forma
'/home/File1.tif;/home/File2.tif;/home/File3.tif'
Con QGIS 3.x invece si usa direttamente una lista, come ['/home/File1.tif',
'/home/File2.tif', '/home/File3.tif']
In pratica questa è la parte incriminata del mio codice
parameters = {'DATA_TYPE' : 5, \
'INPUT' : inputList, \
'NODATA_INPUT' : None, \
'NODATA_OUTPUT' : None, \
'OPTIONS' : '', \
'OUTPUT' : outputStack, \
'PCT' : False, \
'SEPARATE' : True }
processing.run ('gdal:merge', parameters)
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Mail
priva di virus. www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
Il giorno gio 1 ago 2019 alle ore 07:08 matteo <matteo.ghetta a gmail.com> ha
scritto:
> Ciao Giacomo,
>
>
> > e l'errore è
> >
> > Traceback (most recent call last):
> > File "/usr/lib/python3.7/code.py", line 90, in runcode
> > exec(code, self.locals)
> > File "<input>", line 1, in <module>
> > File "<string>", line 76, in <module>
> > File "/usr/share/qgis/python/plugins/processing/tools/general.py",
> > line 106, in run
> > return Processing.runAlgorithm(algOrName, parameters, onFinish,
> > feedback, context)
> > File "/usr/share/qgis/python/plugins/processing/core/Processing.py",
> > line 137, in runAlgorithm
> > raise QgsProcessingException(msg)
> > _core.QgsProcessingException: Unable to execute algorithm
> > Incorrect parameter value for INPUT
>
> e l'errore è giustificato ;)
>
> INPUT: Input layers
>
> Parameter type: QgsProcessingParameterMultipleLayers
>
> Accepted data types:
> - list[str]: list of layer IDs
> - list[str]: list of layer names
> - list[str]: list of layer sources
> - list[QgsMapLayer]
> - QgsProperty
>
>
> devi mettere i vari path dentro una lista:
>
> parameters = {'INPUT':
>
> ['/home/giacomo/aa/a1.tif;/home/giacomo/aa/a2.tif;/home/giacomo/aa/a10.tif;/home/giacomo/aa/a21.tif'],
> \
> 'PCT': False, \
> 'SEPARATE': False, \
> 'NODATA_INPUT': 0, \
> 'NODATA_OUTPUT': 0, \
> 'OPTIONS': "", \
> 'DATA_TYPE': 5, \
> 'OUTPUT': pathOutStack}
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20190801/6dec8dc1/attachment.html>
Maggiori informazioni sulla lista
QGIS-it-user