Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Thu 15 February 2024 11:26

preliator
Participant assidu
Date d'inscription: 17 Nov 2018
Messages: 433

QGIS/Python: algorythme not found

Bonjour à tous,

Je souhaite utiliser l'extension "Networks" sur QGis 3.28. J'ai installé QGis via OsGeo4W et l'extension fonctionne bien via l'appli.

Cependant, impossible de la faire fonctionne avec PyQgis avec systématiquement une erreur qui apparait.

Code:

"QgsProcessingException: Error: Algorithm Networks:update_field not found"

Par exemple, je souhaite ajouter une colonne et la mettre à jour avec l'extension en utilisant l'algorythme "update_field" (le code est collé du model builder qui fonctionne bien lui, ce n'est donc pas un problème de syntaxe).

Code:

import sys
import os
import shutil
from qgis.core import *

 
QgsApplication.setPrefixPath("/usr", True)
qgs = QgsApplication([], False)
qgs.initQgis()

sys.path.extend(['C:/OSGeo4W/apps/qgis-ltr/python/plugins', 'C:/OSGeo4W/apps/qgis-ltr/python/plugins/processing', 
                    'C:/OSGeo4W/apps/qgis-ltr/python', 'C:/OSGeo4W/apps/qgis-ltr/plugins'])
 

from qgis.analysis import *
import processing
from processing.core.Processing import Processing
from qgis.analysis import QgsNativeAlgorithms

Processing.initialize()  # needed to be able to use the functions afterwards
QgsApplication.processingRegistry().addProvider(QgsNativeAlgorithms())

path = f"C:/WAMP/www/CALCULATEUR_ITINERAIRE/RESEAU/"
outputs = {}

alg_params = {
    'EXISTANT': 'Longueur',#name of the column to add
    'FILTRE': '',
    'FORMULE': '$length',
    'INPUT': path + "data/road.gpkg",
    'OUTPUT': path + f'result/final.gpkg',
    'PRECISION': 5,
    'TAILLE': 15,
    'TYPE': 1
}
processing.run('Networks:update_field', alg_params)

L'extension peut être téléchargé sous format archive avec tous les scripts ici -> https://urlz.fr/pyJH

Est-ce déjà arrivé à quelqu'un ? Merci !

Dernière modification par preliator (Thu 15 February 2024 11:27)

Hors ligne

 

Pied de page des forums

Powered by FluxBB