Plugin QGIS d'intersection spatiale. Sélectionnez une commune, le plugin intersecte automatiquement toutes les couches WFS visibles du projet et extrait les entités concernées.
- Recherche de commune avec autocomplétion (API geo.api.gouv.fr)
- Intersection automatique de toutes les couches WFS visibles du projet avec le contour communal
- Résultats en couches mémoire regroupées dans un groupe "Résultats secateur"
- Export CSV — un fichier par couche dans un dossier au choix
- Export PDF — rapport cartographique multi-pages avec fond de carte IGN Plan IGN v2
QGIS 3.28 minimum.
# macOS
ln -s /chemin/vers/ecospheres-secateur \
~/Library/Application\ Support/QGIS/QGIS3/profiles/default/python/plugins/ecospheres-secateur
# Linux
ln -s /chemin/vers/ecospheres-secateur \
~/.local/share/QGIS/QGIS3/profiles/default/python/plugins/ecospheres-secateurPuis dans QGIS : Extensions > Gérer/Installer > chercher "Ecosphères Sécateur" > activer.
- Charger un projet QGIS avec des couches WFS (GPU, Géorisques, etc.)
- Cliquer sur l'icône sécateur dans la toolbar — un panneau latéral s'ouvre
- Taper un nom de commune, sélectionner dans la liste
- Cliquer Interroger
- Les résultats apparaissent dans le groupe "Résultats secateur"
- Cliquer Exporter CSV pour sauvegarder les attributs
- Cliquer Exporter PDF pour générer un rapport cartographique
# Cloner et symlinker
git clone <repo> && cd qgis-plugins
ln -s "$(pwd)/ecospheres-secateur" ~/Library/Application\ Support/QGIS/QGIS3/profiles/default/python/plugins/
# Recharger après modif : installer le plugin "Plugin Reloader" et cibler ecospheres-secateurLe projet utilise ruff (lint + format) et pyright (type checking), exécutés automatiquement via pre-commit. Prérequis : uv.
# Installer les dépendances de dev et activer les hooks pre-commit
uv sync
uv run pre-commit install
# Lancer manuellement sur tous les fichiers
uv run pre-commit run --all-files
# Ou individuellement
uv run ruff check --fix .
uv run ruff format .
uv run pyrightecospheres-secateur/
├── __init__.py # classFactory
├── metadata.txt # Métadonnées plugin
├── plugin.py # Toolbar + cycle de vie du panneau
├── ui/
│ └── panel.py # Panneau dock : recherche commune + boutons + barre de progression
├── core/
│ ├── commune_api.py # Appels geo.api.gouv.fr
│ ├── intersector.py # Détection WFS, intersection, couches résultat
│ └── export.py # Export CSV et PDF
└── resources/
├── icon.png
└── report_page.qpt # Modèle de mise en page pour l'export PDF
Le rapport PDF utilise le modèle resources/report_page.qpt. Pour le modifier :
- Dans QGIS, ouvrir Projet > Gestionnaire de mises en page
- Créer une nouvelle mise en page vide (Mise en page vide > Créer…)
- Dans le composeur, Mise en page > Ajouter des éléments depuis un modèle… et sélectionner
report_page.qpt - Modifier librement : polices, positions, ajouter un logo, une barre d'échelle, une flèche nord, etc.
- Sauvegarder avec Mise en page > Sauvegarder comme modèle… en écrasant
report_page.qpt
Les deux éléments que le code utilise ont un ID d'élément (visible dans Propriétés de l'élément) qu'il faut conserver :
title— le libellé texte du titre (nom de commune ou de couche)map— l'élément carte qui affiche les résultats