Message posté par : FloSnow
----------------------------------------
Bonjour GeGaX.
Intéressant pour la limitation lors de la création des KML, comme quoi le volume des
données compte en effet beaucoup.
- Pour l'étape "Réparer les polygones" :
Après quelques recherches, il ne semble pas y avoir encore de moyen d'utiliser cet
outil de traitement directement sur console. J'ai trouvé une discussion pouvant
apporter une solution dans l'avenir avec les nouvelles versions de QGIS mais sans
ogr/gdal :
https://github.com/qgis/QGIS-Enhancement-Proposals/issues/140
Au cas où, il est toujours possible de partir d'un script .py (script réalisé à partir
du topic :
https://gis.stackexchange.com/questions/345503/standalone-pyqgis-script-for…)
:
-----------------
Code :
import sys
from qgis.core import QgsApplication
from qgis.analysis import QgsNativeAlgorithms
# Chemin des modules python
sys.path.append(r"C:\Program Files\QGIS 3.10\apps\qgis\python\plugins")
# Initialisation de QGIS, sans l'interface
qgs = QgsApplication([], False)
qgs.initQgis()
# Import et initialisation des outils de traitement
import processing
from processing.core.Processing import Processing
Processing.initialize()
# Cette ligne permet de prendre en compte les outils "natifs" de QGIS, dont fait
partie "Réparer les géométries"
QgsApplication.processingRegistry().addProvider(QgsNativeAlgorithms())
# Lancement du traitement "Réparer les géométries"
processing.run("native:fixgeometries",
{'INPUT':'input.shp','OUTPUT':'output.shp'})
-----------------
Puis de le faire tourner en insérant son chemin dans la console (en partant du OSGeo4W
Shell) :
-----------------
Code :
python-qgis script.py
-----------------
- Pour l'étape "Polygones vers Lignes" :
Il est possible d'extraire uniquement les contours des géométries, et donc de créer un
shape de lignes, en utilisant une requête SQL via ogr2ogr :
-----------------
Code :
ogr2ogr output.shp input.shp -dialect sqlite -f "ESRI Shapefile" -sql
"select ST_ExteriorRing(geometry) as geometry, * from input"
-----------------
"-dialect sqlite" semble être obligatoire pour permettre à la requête de
fonctionner.
Il risque cependant d'y avoir des erreurs de géométries s'il y a des entités
multi-parties avec des trous.
Cordialement.
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=329289#p329289
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net