J'ai trouvé cet article qui décrit la «méthode de l'interface graphique QGIS» pour calculer les longueurs de ligne. http://www.qgistutorials.com/en/docs/calculating_line_lengths.html
Comment puis-je calculer la longueur d'une ligne (entité) dans une couche vectorielle avec du code Python?
À titre d'exemple, je veux connaître la longueur de la ligne jaune.
for layer in QgsMapLayerRegistry.instance().mapLayers().values():
features = layer.getFeatures()
for f in features:
...Excellent code, mais cela ne fonctionne que pour le calque sélectionné et l'imprime uniquement. Avec l'aide d'autres publications et de Joseph, je l'ai transformé en un code qui ajoute un attribut à toutes les couches de votre projet avec la longueur.
la source