Giter VIP home page Giter VIP logo

idg-qgis-plugin's Introduction

IDG

Plugin pour QGIS 3 fournissant un accès simple aux données de l'ensemble des Infrastructure de Données Géographiques (IDG) et d'autres ressources nationales géographiques utiles.

Canal de discussions : https://matrix.to/#/!DqHgKIoltGIikFRreo:matrix.org

QGIS Browser

Accès aux données des plateformes :

Installation

Pré-requis :

  • QGIS version LTR [3.28] ou supérieure

  • Une connexion Internet

  • Installation depuis le dépot QGIS : dans le gestionnaire d'exentions (Extensions > Installer/Gérer les extensions), activer les extensions expérimentales et rechercher le plugin IDG

  • Installation depuis le fichier zip : télécharger depuis la derniere release depuis le dépot github.

Utilisation

Administrateur

Créer un nouveau projet et y ajouter les couches que vous souhaitez diffuser.

Warning Les couches doivent pouvoir être accessibles depuis n'importe où (fichiers distants, flux WMS/WFS, etc.), il ne doit pas s'agir de fichiers locaux.

Il est recommandé d'organiser les couches en groupes et sous-groupes.

Dans les propriétés du projets, remplir les champs suivants :

  • Métadonnées > Identification > Titre : Le nom de la plateforme qui sera visible par l'utilisateur (ex : Geo2France)
  • Métadonnées > Identification > Résumé : Facultatif, une brève présentation qui sera visible au survol
  • Métadonnées > Liens : Vous pouvez ajouter ici des liens vers les différents services de votre plateforme (ex : contact, catalogue, etc.) Ceux-ci seront accessibles à l'utilisateur via un clic droit sur le nom de la plateforme. Ajoutez un lien nommé icon pour ajouter une icône personnalisée à la plateforme (png ou svg)

Pour chaque couche, vous pouvez définir :

  • Métadonnées > Identification > Titre & Réumé Un titre et un résumé
  • Métadonnées > Identification > Liens créer un lien nommé "Metadata" vers la fiche de métadonnées
  • Une symbologie (style, étiquettes, formulaires, etc.)

Enregistrez le fichier projet (qgs ou qgz) et déposez le sur un un serveur web accessible depuis l'exterieur (serveur HTTP, Github, cloud, etc.).

Pour proposer l'ajout d'une plateforme dans le plugin : éditez le fichier default_idg.json et faites une pull request.

Utilisateur

Dans le panneau navigateur sur la gauche, double-cliquez sur l'icone IDG : cela déroulera les différentes plateformes disponibles.

Depuis les paramètres du plugin, vous avez la possibilité d'afficher/masquer les plateformes.

Conception

Auteurs

  • Benjamin Chartier, Jean-Baptiste Desbas

Source d'inspiration

  • Nicolas Damiens

Contributeurs

[TODO]

Autres remerciements

  • Julien Moura (Oslandia) pour le template du plugin.
  • Auteurs des icônes de QGIS, reprises dans l'arbre des ressources

Licence

GNU Public License (GPL) Version 2

idg-qgis-plugin's People

Contributors

bchartier avatar doctor-who avatar jbdesbas avatar smevel avatar tbrunelle9 avatar vfabry avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

idg-qgis-plugin's Issues

Utiliser un fichier projet pour définir les couches

A la place du fichier de configuration Json, permettre aux administrateurs de plateformes d'utiliser un fichier projet (.qgs ou .qgz, voir .qlr ?) pour définir les couches (url, style, crs, métadonnées) et les groupes de couches.

services web ArcGis

Bonjour,
Sur le Pays de Brest, nous avons adapté le plugin qui rencontre un beau succès. Merci.
Nous aurions souhaité rajouter la possibilité d'afficher des services de carte ArcGis Rest.
Ceci est d'autant plus intéressant qu'il est désormais possible de les mettre à jour dans QGIS.
Nous pourrions contribuer financièrement à ce développement.

Merci

Ficher de métadonnées manquant

Bonjour,
Depuis que j'ai mis à jour la liste des couches disponibles (ajout d'un ombrage régional et des couches du GPU - qui ne fonctionnent pas, mais c'est un autre problème - on ne peut plus installer le plugin :

Cette extension est corrompue. Python dit :
Ficher de métadonnées manquant

J'ai du faire une fausse manip, mais je ne vois pas où...

Vincent

Rédiger le readme

Le readme doit être ré-écrit en partie pour intégrer la nouvelle orientation du plugin (multi-plateformes, dépot QGIS, etc.)

Intégrer des screenshots et logo.

Passer les notes de version dans les release notes.

Données IGN

Je constate que chez certains partenaires de la plateforme, la mise en open data des données IGN n'est pas connue. Certains utilisent encore d'anciennes données, qui ont été mises à jour depuis.
Je me demande si on ne pourrait pas faire une section IGN dans le plugin, qui donnerait facilement accès aux données disponibles en open data. Je ne sais pas quelle serait la meilleure façon d'organiser cela, vu que le plugin est organisé par thème plutôt que par producteur.

Vincent

Problème SCR sur couche GeoBretagne

Version QGIS : 3.28.8 LTR
Version plugin : 0.2.1

A chaque lancement de QGIS et se produit aussi quand je vais dans le menu Préférences, un message s'affiche :
Capture d’écran du 2023-07-26 16-11-44

Cela ne se produit que si l'utilisateur a paramétré QGIS pour demander le SCR en cas de SCR inconnu.
La couche en question est le raster situé dans Environnement > Espaces protégés > Réserve Nationale de Chasse et de la Faune Sauvage

Ping @smevel

Changer la structure du fichier config.json

Actuellement le fichier est sous la forme [{"<nom-de-la-plateforme>":"<url">} , ... ].

A changer en {"nom":"<nom-de-la-plateforme>", "url":"<url">} pour anticiper l'ajout d'autres propriétés (tags, icon, etc.)

Description d'une couche très longue (trop longue pour l'infobulle)

Lorsque la description d'une couche est très longue l'infobulle qui s'affiche au survol du nom de la couche dans le panneau latéral n'est pas très heureux : le texte est affiché sur une seule ligne très longue.

Amélioration proposée : limiter la largeur de l'infobulle en forçant le retour à la ligne par exemple. Ou alors tronquer le texte de manière arbitraire.

Script compatibilité avec les fichiers de config *.json

Écrire un script permettant de générer un fichier projet à partir dans "anciens" fichiers de configuration en .json.
Le script, destiné aux administrateurs de plateforme, peut être lancé à partir de la console python de QGIS une fois le plugin installé

Intégration du menu des couches dans l'explorateur de QGIS ?

Pour ne pas multiplier les interfaces et panneaux, ne serait il pas pertinent de basculer l'arborescence des couches de l'IDG dans l’explorateur de QGIS ? A débattre sur l'intérêt / pertinence

image

NB : je viens de remarquer qu'il y a une fonction filtrage qui éviterait de réimplémenter une recherche ?

Créer un entrepôt IGN

Suite aux discussions du geoCom, il serait intéressant de mutualiser les flux ign nationaux au sein d'un groupe ign dédié au lieu de devoir parcourir chaque sous dossier idg.
Reste à voir le détail de cette co alimentation.
Proposer une première version (je peux me l'assigner si besoin d'aide)

Mémoriser l'emplacement du panneau

A chaque lancement de QGIS, le panneau présentant l’arborescence reprend son emplacement initial au lieu de se comporter comme les autres panneaux QGIS.

Créer un assistant au premier lancement

Suite aux discussions lors du geoCom, il serait bien de créér un assistant (au premier lancement uniquement) qui permet de sélectionner la ou les plate-formes ciblées par utilisateur.

Gestion des projets

Version plugin IDG : 0.1.0
Version QGIS : 3.22

Dans les options du plugin, il serait bien pour un utilisateur de pouvoir supprimer des plates-formes (bouton -) ici :
image

AUTRE POSSIBILITE : à la première ouverture du plugin, une fenêtre s'affiche permettant à l'utilisateur de sélectionner les plate-formes qu'il souhaite voir. Celles qu'il n'a pas sélectionnées sont désactivées pour son usage.
Dans le menu l'utilisateur voit la liste des plateformes avec une case à coché actif. Il garde la possibilité d'ajouter une nouvelle url.

Warning dans les logs pour DataGrandEst et GeoBretagne

QGIS : 3.34.6
Plugin : 0.2.4
OS : Linux Pop!_OS

Lorsque je clique pour dérouler le menu IDG dans l'explorateur, j'ai deux warnings dans les Logs / Onglet Général :

2024-05-31T11:51:51     WARNING    Erreur : le fichier ZIP suivant n'existe pas : '/home/nrochard/.local/share/QGIS/QGIS3/profiles/default/python/plugins/idg/config/DataGrandEst.qgz'
2024-05-31T11:51:51     WARNING    Erreur : le fichier ZIP suivant n'existe pas : '/home/nrochard/.local/share/QGIS/QGIS3/profiles/default/python/plugins/idg/config/GéoBretagne.qgz'

Dans mes préférences, je n'ai pas coché toutes les IDG, seulement Geo2France et GeoPlateforme, mais je n'ai aucun avertissement lié à openIG par exemple.

Problème comportement du menu explorateur (drag & drop)

Version plugin IDG : 0.1.0
Version QGIS : LTR 3.28.5
IDG active : Geo2France


Testé sur un projet vierge.
Le menu contextuel ne se comporte pas comme les autres menus (exemple : connexion PG, flux WMS ou WFS) :

  • le glisser déposer ne fonctionne pas
  • le clic droit : Afficher la couche ne fonctionne pas
  • le clic droit : Afficher les métadonnées fonctionne correctement

La seule solution est de double cliquer sur la couche pour l'avoir dans QGIS

Rendre générique le plugin

Rendre le plugin utilisable par plusieurs plateformes régionales ou locales.

Le plugin propose une liste par défaut de plateformes, l'utilisateur sélectionne la ou les plateformes dont il souhaite ajouter le contenu.

Laisser à l'utilisateur la possibilité d'ajouter d'autres plateformes (nom + url du fichier de configuration)

Liens vers les fichiers projets des plateformes

Retour geocom : la liste des plateformes (URLs vers des fichiers projets) doit-elle être codée en dur dans le plugin ou dans fichier distant interrogé par le plugin ?

Codé en dur : nécessité de mettre à jour le plugin pour voir les nouvelles plateformes. Celles-ci font donc partie des nouveautés de chaque versions.

Sur fichier distant (XML, json, autre ?) : Ajoute silencieusement les nouvelles plateformes.

Quels impacts pour les utilisateurs ayant masqué certaines plateformes. Faut-il afficher les nouvelles ?

Disparition des plateformes lors d'un clic droit -> Masquer

Quand l'utilisateur fait un clic droit sur une plateforme, et clique ensuite sur "Masquer" -> l'ensemble des plateforme ne sont plus affichées.
L’élément IDG de explorateur n'est pas correctement mis à jour mais la plateforme est bien décoché dans les paramètres du plugin.

Localisation des paramètres du plugin

Actuellement les paramètres du plugin sont gérés dans plugin_globals.py. La classe mélange des constantes et des paramètres.
Le template Oslandia utilise plutôt preference.py (PlgOptionsManager).

Pour écrire une conf : PlgOptionsManager().set_value_from_key('conf_key','conf_value')
Pour lire : PlgOptionsManager.get_plg_settings().conf_key

Passer l'ensemble des paramètres de plugin_globals.py vers preferences.py. Mettre les valeurs par défaut ici :

class PlgSettingsStructure:
"""Plugin settings structure and defaults values."""
# global
debug_mode: bool = False
version: str = __version__
platforms: str = ''

Laisser les constantes (NODE_TYPE_WS etc.) dans plugin_globals.py ?

Suppression des branches obsolètes

Je propose qu'on fasse le ménage dans les branches obsolètes.
Quelles sont les branches obsolètes ?

  • doc
  • fix-json-load-mac-qgis3.16.8
  • qgs_config_file

Fichier de licence

Curieusement un fichier de licence est mentionné dans le README.md du projet mais le fichier en question n'est pas présent. Il faudrait en ajouter un.

Impossible de charger l'extension

Salut,

En vue de la conf QGIS FR qui se tient cette semaine, nous concoctons un profil QGIS avec tous les plugins évoqués pendant la conférence donc le vôtre.

Nous ne l'avons trouvé ni sur le dépôt officiel ni sur un dépôt personnalisé public. Nous essayons donc de l'installer à partir du zip des release Github, mais j'ai cette erreur :

image

cc @florentfgrs

Bug installation sur MacOS (Catalina et plus ancien): la fenêtre contenant la liste reste vide

Sur la plateforme GéoGrandEst on nous a remonté le problème suivant:

GeoGrandEst fonctionne très bien sur un QGIS 3.14 installé sur 2 macs différents. Par contre, la tentative de passage à la version suivant (3.16, LTR) entraine:

erreur lors du lancement: "2021-07-08T12:27:10 CRITICAL Erreur : La lecture du fichier de configuration du plugin geograndest a produit des erreurs." "
Unicode decoding error.
'ascii' codec can't decode byte 0xc3 in position 16: ordinal not in range(128)
Peut-être une erreur liée à des accents qui passent mal ? Juste surprenant car cela fonctionne très bien sur la version 3.14

Plus de détails et ticket complet sur geograndest/qgis-plugin#4

Je n'ai pas les moyens de reproduire (MacOS)...
Avez-vous déjà rencontré ce problème?
Une piste de résolution?

Impossible d'installer le plugin sur QGIS

Bonjour,

Diagnostic

Lorsque je tente d'installer le plugin "IDG" depuis QGIS, j'ai le message d'erreur suivant qui s'affiche :

Error transferring https://plugins.qgis.org/plugins/idg/version/0.2.4/download/ - server replied: Bad Gateway

image

Pourriez-vous m'indiquer si vous reproduisez la même erreur ?

Contexte

Version de QGIS 3.28.9-Firenze Révision du code 66f4d63a
Version de Qt 5.15.8
Version de Python 3.9.9
Version de GDAL/OGR 3.5.2
Version de Proj 8.2.1
Version de la base de données du registre EPSG v10.041 (2021-12-03)
Version de GEOS 3.11.2-CAPI-1.17.2
Version de SQLite 3.36.0
Version de PDAL 2.4.3
Version du client PostgreSQL unknown
Version de SpatiaLite 5.0.1
Version de QWT 6.1.5
Version de QScintilla2 2.11.6
Version de l'OS KDE Flatpak runtime
       
Extensions Python actives
changeDataSource 3.1
craig 0.3
StreetView 3.2
QuickOSM 2.2.3
menu_from_project 2.1.0
french_address 1.3.0
db_manager 0.1.20
processing 2.12.99

la couche EPCI ne s'affiche pas

Un utilisateur du plugin remonte ce problème : la couche EPCI disponible dans la section "limites administratives" renvoie le message d'erreur suivant :
2021-10-11T10:24:04 CRITICAL Couche EPCI - BD Topo : Le téléchargement des entités de la couche spld:epci a échoué ou partiellement échoué: Le téléchargement des entités à échoué: Error transferring https://www.geo2france.fr/geoserver/spld/wfs?SERVICE=WFS&REQUEST=GetFeature&VERSION=2.0.0&TYPENAMES=spld:epci&TYPENAME=spld:epci&STARTINDEX=0&COUNT=1000000&SRSNAME=urn:ogc:def:crs:EPSG::2154 - server replied: Bad Request. Vous allez sans doute devoir recharger la couche avec F5
La version du qgis utilisé est 3.4.11
A première vue, j'ai l'impression qu'il y a un problème dans la requête GetFeature, avec un double :: devant le paramètre EPSG
Je n'ai pas cette erreur sur mon QGIS, qui est en version 3.16.3

Lien vers le fichier de configuration distant en dur

Le lien vers le fichier de configuration distant default_idg.json est en dur dans le code :

url="https://raw.githubusercontent.com/geo2france/idg-qgis-plugin/dev/plugin/idg/config"
"/default_idg.json",

Il s'agit du fichier qui contient la listes des plateformes intégrées au plugin.

L'URL de ce fichier devrait être placer dans les variables de configuration pour faciliter les tests et réutilisation du plugin.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.