ho deciso di provare a salvare come script da utilizzare nel motore di processing di qgis uno script python che uso spesso.
Lo script in questione è molto simile a RandomPointsVector.py a cui ho apporto le modifiche che ritenevo necessarie e poi ho salvato nella cartella
cd /home/giacomo/.local/share/QGIS/QGIS3/profiles/default/processing/scripts
Purtroppo però quando vado ad aprire QGIS 3.10 ottengo due messaggi di errore in serie.
Questo è il primo
NotImplementedError: QgsProcessingAlgorithm.name() is abstract and must be overridden
Traceback (most recent call last):
File “/usr/share/qgis/python/plugins/processing/script/ScriptUtils.py”, line 68, in loadAlgorithm
alg = algfactory.instances.pop().createInstance()
IndexError: pop from empty list
During handling of the above exception, another exception occurred:
NotImplementedError: QgsProcessingAlgorithm.name() is abstract and must be overridden
Questo è il secondo
NotImplementedError: QgsProcessingAlgorithm.initAlgorithm() is abstract and must be overridden
NotImplementedError: QgsProcessingAlgorithm.initAlgorithm() is abstract and must be overridden
Versione Python: 3.7.3 (default, Oct 7 2019, 12:56:13) [GCC 8.3.0]
Versione di QGIS: 3.10.1-A Coruña A Coruña, ef24c526da
hai cambiato il nome della classe dell'algoritmo? Se si, hai anche
cambiato il metodo create instance con il nuovo nome? Devi anche dare un
nome univoco al tuo algoritmo nel metodo name.
se invece non hai cambiato né il nome dela classe né il nome del metodo
né il nome allora dovresti farlo, altrimenti Processing vede due moduli
con lo stesso nome e fa casino
hai cambiato il nome della classe dell’algoritmo? Se si, hai anche
cambiato il metodo create instance con il nuovo nome? Devi anche dare un
nome univoco al tuo algoritmo nel metodo name.
se invece non hai cambiato né il nome dela classe né il nome del metodo
né il nome allora dovresti farlo, altrimenti Processing vede due moduli
con lo stesso nome e fa casino