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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 06 April 2021 10:56

zak_geom34
Juste Inscrit !
Date d'inscription: 27 Jan 2021
Messages: 9

QGIS: Amelioration de l'Ecriture de .kml

Bonjour à tous,

Je travaille dans une structure qui a besoin de rendre des fichiers .kml à des clients, selon une charte bien précise : Selon les attributs des entités, elles doivent être affichées selon un certain style, et organisées selon une arborescence de dossier.

Les dessinateurs, les personnes qui créent ces entités, travaillent avec Qgis, pour des raisons de confort de travail / précision (En relatif à Google Earth)
Elles créent des vecteurs, puis les exportent en .kml, les chargent dans Google Earth, et de là construisent l'arborescence nécessaire et attribuent les styles requis manuellement à chaque groupe d'entités. C'est un travail fastidieux, et les dessinateurs passent presque plus de temps à ranger et styliser les entités qu'à les créer depuis Qgis.

Je suis familier du développement python, en particulier avec PyQgis. Je cherche à automatiser la transition "couches vecteurs VERS document unique .kml", en créant une extension à qgis, en python. Cette extension serait une "amélioration" de la fonction native d'enregistrement kml de couches vecteurs de qgis. L'algorithme écrirait du code xml en fonction des attributs et pourrait ainsi ranger / styliser chaque entité. Voilà pour le contexte.

Je souhaitais savoir si quelqu'un a déjà été confronté à un problème similaire, si l'idée ne paraît pas trop fumeuse, si d'autres solutions existent... En bref, tout conseil est bon à prendre, car j'ai l'impression de me lancer dans une petite aventure brumeuse.

Merci à quiconque trouvera le temps de me répondre.

Dernière modification par zak_geom34 (Tue 06 April 2021 10:59)

Hors ligne

 

#2 Tue 06 April 2021 12:25

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 427

Re: QGIS: Amelioration de l'Ecriture de .kml

Bonjour,

Peut-être regarder du côté du plugin https://plugins.qgis.org/plugins/kmltools/
Une nouvelle version est sortie hier. Le changelog n'a pas l'air dispo sur le repo ceci dit. https://github.com/NationalSecurityAgen … n/releases

Hors ligne

 

#3 Tue 06 April 2021 19:43

ThomasG
Membre
Lieu: Nantes
Date d'inscription: 9 Sep 2005
Messages: 947
Site web

Re: QGIS: Amelioration de l'Ecriture de .kml

Bonjour,

Personnellement, je partirai sur `pykml` https://pythonhosted.org/pykml/ pour générer des KML "à façon" (je l'ai personnellement utilisé sur un projet). Il n'est basé que sur Python donc facilement intégrable comme dépendance dans un plugin QGIS.

Pour avoir la géométrie en KML, une possibilité est de passer entre QGIS et GDAL comme ci-dessous.

Code:

from osgeo import ogr

first = next(iface.activeLayer().getFeatures())
mywkt = first.geometry().asWkt()
point = ogr.CreateGeometryFromWkt(mywkt)
print(point.ExportToKML())

Je pense néanmoins que PyKML peut suffire quand il est alimenté avec les géométries récupérées de vos géométries QGIS via les fonctions `as*` de QgsGeometry visible en tapant `[i for i in dir(QgsGeometry()) if i.startswith('as')]`

Une autre alternative est d'utiliser SimpleKML https://simplekml.readthedocs.io/en/latest/ qui lui est utilisé dans le plugin https://github.com/NationalSecurityAgen … ols-plugin

Je pense que les 2 bibliothèques Python se valent, il s'agit presque de préférence selon l'API de chacune.



Thomas

Hors ligne

 

#4 Wed 07 April 2021 07:30

Bruno
Membre du bureau
Lieu: Toulouse
Date d'inscription: 22 Jun 2005
Messages: 11956
Site web

Re: QGIS: Amelioration de l'Ecriture de .kml

Par ici SVP.

Hors ligne

 

#5 Wed 07 April 2021 07:50

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3945

Re: QGIS: Amelioration de l'Ecriture de .kml

Bonjour,
Je ne suis pas coutumier du kml et ignore ce qu'est l'arborescence dont vous parlez et comment il gère les styles. Il n'est pas possible de faire cela dans QGIS ? Genre via un ensemble de règles ? Ou le style serait rejeté par GE après (en supposant qu'il y ait alors encore besoin de GE)?
Autrement, je me demandais si cette nouvelle fonctionnalité (pour la 3.20 donc disponible en test) pourrait aider (j'en comprends qu'on fait le trajet inverse : on rapatrie le style depuis le kml vers QGIS)

Hors ligne

 

Pied de page des forums

Powered by FluxBB