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 Tue 09 January 2024 14:40

AdrienRR
Juste Inscrit !
Date d'inscription: 9 Jan 2024
Messages: 3

QGIS: automatisation export N couches vecteurs

Bonjour,
Je suis totalement nouveau sur les automatisation par modèle et encore plus par python sur QGIS.
J'aimerais arriver à exporter plusieurs couches vecteur en une seul fois. L'exportation n'étant pas un traitement de la boite à outils, je ne peux donc pas l'appliquer avec les modèles.

J'ai essayé aussi de faire une reprojection vers le même système projection (histoire de ne rien changer) mais il semblerait que cela ne remplisse pas tout à fait le rôle d'exportation (impossibilité d'exporter en format ESRI Shape).

Merci de votre aide !

Dernière modification par AdrienRR (Tue 09 January 2024 16:02)

Hors ligne

 

#2 Tue 09 January 2024 14:41

Patrice
JeSuisCharlie
Date d'inscription: 16 Sep 2005
Messages: 4746

Re: QGIS: automatisation export N couches vecteurs

Hello
Est ce que l on parle de QGIS ? ou de ArcGIS ? ou ??
Votre sujet sera transfere sur le BON Forum !
Merci, GeoBye, Pat


(Autodesk Expert Elite Team)

Hors ligne

 

#3 Tue 09 January 2024 16:03

AdrienRR
Juste Inscrit !
Date d'inscription: 9 Jan 2024
Messages: 3

Re: QGIS: automatisation export N couches vecteurs

Patrice a écrit:

Hello
Est ce que l on parle de QGIS ? ou de ArcGIS ? ou ??
Votre sujet sera transfere sur le BON Forum !
Merci, GeoBye, Pat


Oups oui désolé ! j'ai modifié dans la question, il s'agit de Qgis !

Dernière modification par AdrienRR (Tue 09 January 2024 16:03)

Hors ligne

 

#4 Tue 09 January 2024 16:42

triird
Participant occasionnel
Date d'inscription: 13 Jan 2022
Messages: 14

Re: QGIS: automatisation export N couches vecteurs

Bonjour,
Depuis la console python de Qgis 3.28

ça marche, après il y a surement un code plus simple


#### EXPORT en SHP d'une couche depuis projet Qgis : (dans console python)

from qgis.core import QgsVectorFileWriter
from qgis.core import QgsVectorFileWriter
from qgis import *
from qgis.core import *
from qgis.gui import *

layer = QgsProject.instance().mapLayersByName("NOM_DE_LA_COUCHE")[0]
writer = QgsVectorFileWriter.writeAsVectorFormat(layer, "CHEMIN/NOM_DE_LA_COUCHE.shp", "UTF-8", layer.crs(), "ESRI Shapefile")


Théo

Hors ligne

 

#5 Tue 09 January 2024 16:48

AdrienRR
Juste Inscrit !
Date d'inscription: 9 Jan 2024
Messages: 3

Re: QGIS: automatisation export N couches vecteurs

triird a écrit:

Bonjour,
Depuis la console python de Qgis 3.28

ça marche, après il y a surement un code plus simple


#### EXPORT en SHP d'une couche depuis projet Qgis : (dans console python)

from qgis.core import QgsVectorFileWriter
from qgis.core import QgsVectorFileWriter
from qgis import *
from qgis.core import *
from qgis.gui import *

layer = QgsProject.instance().mapLayersByName("NOM_DE_LA_COUCHE")[0]
writer = QgsVectorFileWriter.writeAsVectorFormat(layer, "CHEMIN/NOM_DE_LA_COUCHE.shp", "UTF-8", layer.crs(), "ESRI Shapefile")


Théo


Merci, pour la réponse, mais ceci n'est que pour exporter une seule couche, si je veux en exporter 50 d'un coup toute avec des nom différents (et heureusement ! ) comment faire ?

Merci,

Hors ligne

 

#6 Wed 10 January 2024 11:43

triird
Participant occasionnel
Date d'inscription: 13 Jan 2022
Messages: 14

Re: QGIS: automatisation export N couches vecteurs

Je pense qu'il y a surement un autre solution, mais je démultiplie les lignes comme ceci est ça marche :

#### EXPORT en SHP d'une couche depuis projet Qgis : (dans console python)

from qgis.core import QgsVectorFileWriter
from qgis.core import QgsVectorFileWriter
from qgis import *
from qgis.core import *
from qgis.gui import *

layer = QgsProject.instance().mapLayersByName("NOM_DE_LA_COUCHE_1")[0]
writer = QgsVectorFileWriter.writeAsVectorFormat(layer, "CHEMIN/NOM_DE_LA_COUCHE_1.shp", "UTF-8", layer.crs(), "ESRI Shapefile")

layer = QgsProject.instance().mapLayersByName("NOM_DE_LA_COUCHE_2")[0]
writer = QgsVectorFileWriter.writeAsVectorFormat(layer, "CHEMIN/NOM_DE_LA_COUCHE_2.shp", "UTF-8", layer.crs(), "ESRI Shapefile")

layer = QgsProject.instance().mapLayersByName("NOM_DE_LA_COUCHE_3")[0]
writer = QgsVectorFileWriter.writeAsVectorFormat(layer, "CHEMIN/NOM_DE_LA_COUCHE_3.shp", "UTF-8", layer.crs(), "ESRI Shapefile")


Sinon j'ai trouvé ça à tester :
https://gis.stackexchange.com/questions … ct-for-tra

Théo

Hors ligne

 

Pied de page des forums

Powered by FluxBB