Seize besoins métier, seize filtres
BD TOPO® 3.5 © IGN, Haute-Garonne.
Chaque histoire part d'une question posée dans un service technique, une collectivité ou un bureau d'études, puis la traduit en réglages FilterMate, étape par étape. Les douze premiers récits montrent les enregistrements QGIS et leurs résultats chiffrés, en Haute-Garonne puis à Estavar. Quatre recettes illustrées complètent les neuf combinaisons de types de couches, avec les données à préparer, les réglages et le résultat attendu.
01Le dossier communal en trois minutes
Cadrer 12 couches départementales et livrer un GeoPackage stylé.
12 couches · 12 380 bâtiments
02Quels bâtiments sont proches des grands axes ?
Un tampon calculé par expression selon chaque catégorie de route.
2 753 bâtiments · 78 ERP
03Les bâtiments proches des cours d’eau
Une bande de 300 m puis 100 m, avec annulation et rejeu.
300 m · 14 426 bâtiments
04Repérer les franchissements à vérifier
Cadrer un EPCI de 37 communes, puis appliquer le prédicat Cross.
747 routes · 364 ouvrages
05Débroussailler autour des maisons
Sélection par expression, tampon de 50 m, puis filtre attributaire.
58 bois et forêts
06Les hameaux éloignés des routes revêtues
Disjoint trouve ce qui reste au-delà d'une zone de 200 m.
22 hameaux au-delà de 200 m
07La bibliothèque de requêtes
Enregistrer, décrire, rejouer et partager un filtre complet.
Même résultat · un clic
08Les objets modifiés depuis une date
Appliquer une expression de date à quatre couches depuis Processing.
4 couches · 1,6 million d'objets
09Les parcelles en forte pente
La pente calculée depuis le MNT, une plage sur l’histogramme, une couverture minimale.
58 parcelles · pente ≥ 30 %
10La hauteur du bâti
Classe bâtiment et hauteur au-dessus du MNT, calculée par PDAL.
57 bâtiments au-dessus de 9 m
11Les routes à élaguer
Végétation haute de plus de 8 m, à 3 m des tronçons.
91 tronçons sur 172
12Le lot de relevé autour de l’église
Un vecteur découpe un MNT et un nuage, puis tout part dans un ZIP.
GeoTIFF + LAZ · ZIPLa végétation sur une orthophoto RVB
Le NDVI de l’image infrarouge devient le masque d’une autre image.
Raster → raster · NDVI > 0,3Les points LiDAR sous les toits
Un objet repéré sur l’orthophoto isole les points à son aplomb.
Raster → LiDAR · pipette objetLe MNT au droit des points sol
Les points classés sol définissent où conserver les altitudes du raster.
LiDAR → raster · classe 2La végétation près des lignes électriques
Les points de câble découpent un second nuage limité à la végétation haute.
LiDAR → LiDAR · tampon 10 m0Le terrain de jeu
Les histoires 1 à 8 utilisent le même fichier : la BD TOPO 3.5 de la Haute-Garonne, telle que l'IGN la diffuse gratuitement sur la Géoplateforme, en un seul GeoPackage de 2,9 Go et 53 couches. Rien n'a été découpé au préalable : c'est FilterMate qui cadre le territoire à chaque fois.
| Couche | Objets dans le département | Rôle dans les histoires |
|---|---|---|
batiment | 1 173 829 | Cible principale : ce qu'on protège, ce qu'on dessert |
troncon_de_route | 383 112 | Source des tampons routiers, cible des franchissements |
haie · zone_de_vegetation | 416 105 · 261 051 | Végétation à débroussailler |
troncon_hydrographique · surface_hydrographique | 49 344 · 9 969 | Cours d'eau et surfaces en eau |
erp | 11 384 | Établissements recevant du public : écoles, mairies, commerces |
construction_lineaire | 12 473 | Ponts, barrages, murs |
commune · epci | 930 · 38 | Territoires de cadrage |
filtermate.log. Le matériel et les conditions de cache n’ont pas été consignés : ces relevés illustrent une exécution et ne constituent pas un benchmark reproductible.
1Le dossier communal en trois minutes
BD TOPO® 3.5 © IGN, Saint-Gaudens.
Le besoin
Camille, chargée d'études dans un bureau d'études, répond à une consultation de la ville de Saint-Gaudens. Elle a le GeoPackage départemental complet et doit livrer à son client, ce soir, uniquement ce qui concerne la commune : bâtiments, voirie, hydrographie, végétation, équipements. Avec les styles, dans un fichier qu'il ouvrira d'un double-clic.
La traduction FilterMate
La commune est la couche source, choisie par son nom en sélection simple. Toutes les autres couches sont cochées d'un coup dans Layers to filter, avec le prédicat Intersect et sans tampon. L'onglet Exporting écrit ensuite un GeoPackage avec projet embarqué, styles QML et archive ZIP.
- Source
commune- Sélection
- Saint-Gaudens (sélection simple)
- Cibles
- 12 couches
- Relation
- Intersect, sans tampon
- Résultat
- 12 380 bâtiments, GPKG + ZIP
- Charger les 13 couches et ouvrir FilterMate. Le panneau Couches affiche les effectifs du département entier : 1 173 829 bâtiments, 383 112 tronçons de route. Cliquez sur commune : elle devient la couche source. Dans la zone Exploring, cochez Single selection, mettez l'expression d'affichage sur
"nom_officiel"et tapez « Saint-Gaudens » dans la liste. Le bouton Tracking de la colonne Exploring étant actif, le canevas se recentre tout seul sur la commune.
Étape 1. La commune est sélectionnée (surbrillance jaune) ; autour d'elle, tout le département reste chargé. - Cocher toutes les cibles. Onglet Filtering, ligne Layers to filter : clic droit dans la liste puis Select All. Le prédicat Intersect est coché, la ligne Buffer reste désactivée.

Étape 2. Douze couches cibles, un prédicat, pas de tampon. - Filter. Le journal indique moins d'une seconde pour les douze couches : sur GeoPackage, FilterMate interroge d'abord l'index R-tree de chaque table, puis n'évalue
ST_Intersectsque sur les candidats.
Zoom sur le centre-ville : 12 380 bâtiments, 317 ERP, 2 902 tronçons de route. - Configurer l'export. Onglet Exporting : les 12 couches, la projection EPSG:2154, les styles en QML, le format GPKG, le dossier de sortie et une archive ZIP.

Étape 4. Tout est réglé, rien n'est encore écrit. - Export. Comme le format est GeoPackage et qu'il y a plusieurs couches, FilterMate affiche un récapitulatif et propose de conserver la hiérarchie des groupes. Validez : le fichier est écrit en 4 secondes avec un projet QGIS embarqué.

Étape 5. Export terminé ; le client ouvrira le .gpkg et retrouvera la carte telle quelle.
Résultat
| Couche | Département | Saint-Gaudens |
|---|---|---|
| batiment | 1 173 829 | 12 380 |
| troncon_de_route | 383 112 | 2 902 |
| haie | 416 105 | 1 505 |
| zone_de_vegetation | 261 051 | 1 006 |
| erp | 11 384 | 317 |
| troncon_hydrographique | 49 344 | 157 |
| zone_d_habitation | 31 669 | 109 |
| construction_lineaire | 12 473 | 77 |
| surface_hydrographique | 9 969 | 42 |
| equipement_de_transport | 4 255 | 39 |
| terrain_de_sport | 2 973 | 27 |
| cimetiere | 1 142 | 2 |
Sous le capot
Filtre fournisseur généré pour la couche des bâtiments, lisible dans Propriétés de la couche → Source :
ROWID IN (SELECT id FROM "rtree_batiment_geometrie"
WHERE minx <= 517706.0 AND maxx >= 511938.3
AND miny <= 6231762.5 AND maxy >= 6222765.8)
AND ST_Intersects("geometrie", ST_MakeValid(ST_GeomFromText('Polygon ((…))', 2154)))
2Quels bâtiments sont proches des grands axes ?
BD TOPO® 3.5 © IGN, Muret.
importance n’établit pas un classement sonore ; ce résultat ne mesure ni bruit ni population exposée. Pour une étude sonore, utilisez les secteurs et catégories issus du classement officiel.Le besoin
Nadia étudie la proximité des bâtiments aux grands axes de Muret, traversée par l’A64 et plusieurs départementales. Elle utilise des distances d’étude de 300 m et 250 m selon l’importance des routes pour démontrer un tampon variable. Le résultat dénombre des bâtiments et des ERP, pas des habitants.
La traduction FilterMate
Après le cadrage sur Muret, la couche source devient troncon_de_route, avec une sélection personnalisée "importance" IN ('1', '2'). Le tampon est une expression évaluée pour chaque tronçon : 300 m pour l'importance 1, 250 m pour la 2. Le type de tampon Flat évite les arrondis en bout de tronçon. Cibles : batiment et erp.
- Source
troncon_de_route- Sélection
"importance" IN ('1', '2')- Cibles
batiment,erp- Relation
- Intersect, tampon par expression, Flat
- Résultat
- 2 753 bâtiments, 78 ERP
- Cadrer Muret. Même geste qu'à l'histoire 1 : commune en source, Muret en sélection simple, toutes les couches en cibles, Intersect, Filter. Muret compte 19 458 bâtiments, 354 ERP et 5 512 tronçons de route.

Étape 1. La commune est cadrée ; l'A64 traverse le territoire du nord-est au sud-ouest. - Choisir les grands axes. Cliquez sur troncon_de_route dans le panneau Couches : elle devient la source. Cochez Custom selection et saisissez
"importance" IN ('1', '2'). 102 tronçons sont retenus, sur les 5 512 de la commune.
Étape 2. L'autoroute et les départementales principales sont surlignées. - Tampon par expression. Cibles batiment et erp, prédicat Intersect. Sur la ligne Buffer value, ouvrez le menu de la propriété définie par les données, choisissez Edit…, puis saisissez dans l’éditeur d’expression :
Validez l’éditeur. Sur la ligne suivante, ouvrez la liste Round / Flat / Square et choisissez Flat.CASE WHEN "importance" = '1' THEN 300 WHEN "importance" = '2' THEN 250 ELSE 100 END
Étape 3. Une distance par tronçon, selon son importance. 
Étape 3. La distance n'est plus un nombre mais une expression QGIS évaluée tronçon par tronçon. - Filter.

Étape 4. Les bâtiments et ERP hors secteur ont disparu de la carte. 
Zoom : la bande de 300 m autour de l'A64 se lit dans la répartition des bâtiments conservés.
Résultat
2 753 bâtiments et 78 ERP se trouvent dans les zones tampons des 102 tronçons d'importance 1 et 2 de Muret, dont 2 196 bâtiments et 75 ERP sur la commune même : le tampon déborde chez les voisins, car un nouveau filtre spatial remplace le cadrage (voir « Une règle à connaître »).
"largeur_de_chaussee" * 3.
Les tronçons dont la largeur est vide demandent un coalesce("largeur_de_chaussee", 3).
3Les bâtiments proches des cours d’eau
BD TOPO® 3.5 © IGN, Grenade.
Le besoin
Julien prépare une exploration cartographique à Grenade, à la confluence de la Garonne et de la Save. Il compare les bâtiments situés à moins de 300 m puis de 100 m des surfaces en eau et revient au premier résultat avec Undo.
La traduction FilterMate
Source : surface_hydrographique, cadrée sur Grenade, avec une sélection multiple et Select All (77 surfaces). Cibles : bâtiments, ERP et routes, prédicat Intersect, tampon de 300 m. Second Filter à 100 m, puis Undo dans la barre d'actions.
- Source
surface_hydrographique- Sélection
- 77 surfaces (Select All)
- Cibles
- bâtiments, ERP, routes
- Relation
- Intersect, 300 puis 100 m, Undo
- Résultat
- 14 426 bâtiments à 300 m
- Cadrer Grenade. 6 998 bâtiments, 79 ERP, 1 978 tronçons de route et 77 surfaces en eau.

Étape 1. Les surfaces en eau (Garonne à l'est, Save au sud) sont désormais les seules de la carte. - Sélectionner toutes les surfaces en eau. Cliquez sur surface_hydrographique, cochez Multiple selection, puis clic droit dans la liste et Select All. Le résumé au-dessus de la liste compte 77 entités.

Étape 2. La liste affiche la nature et l'identifiant de chaque surface ; toutes sont cochées. - 300 m. Cibles batiment, erp et troncon_de_route, Intersect, Buffer value à 300. Filter.

Étape 3. Trois cibles, un tampon de 300 m, AND pour les cibles. 
Étape 3. La bande de 300 m suit la Garonne bien au-delà de Grenade : les polygones du fleuve sont longs, et le filtre spatial des cibles remplace le cadrage communal. - 100 m. Changez la valeur du tampon et appuyez à nouveau sur Filter.

Étape 4. Le résultat se resserre sur les berges. - Undo. Le premier bouton après Filter restaure l'état précédent des trois couches, à 300 m. Redo le réappliquerait. L'historique est propre au projet et survit à un redémarrage de QGIS.

Étape 5. Retour à 300 m d'un clic.
Résultat
| Bande | Bâtiments | ERP | Tronçons de route |
|---|---|---|---|
| 300 m autour des surfaces en eau de Grenade | 14 426 | 178 | 6 310 |
| 100 m | 2 770 | 28 | 1 949 |
4Repérer les franchissements à vérifier
BD TOPO® 3.5 © IGN, Toulouse Métropole.
Le besoin
Karim gère les ouvrages d'art de Toulouse Métropole : 37 communes, près de 99 000 tronçons de route. Il veut l'inventaire des endroits où la voirie franchit un cours d'eau permanent, tronçons et ouvrages, pour planifier les inspections.
La traduction FilterMate
Le cadrage se fait cette fois sur la couche epci. Puis la source devient troncon_hydrographique avec la sélection personnalisée "persistance" = 'Permanent', les cibles troncon_de_route et construction_lineaire, et le prédicat Cross, sans tampon : une route qui longe la rivière n'est pas retenue, une route qui la traverse l'est.
- Source
troncon_hydrographique- Sélection
"persistance" = 'Permanent'- Cibles
- routes, constructions linéaires
- Relation
- Cross, sans tampon
- Résultat
- 747 tronçons, 364 ouvrages
- Cadrer l'EPCI. Couche epci en source, « Toulouse Métropole » en sélection simple sur
"nom_officiel", toutes les autres couches en cibles, Intersect. Le filtrage ramène 98 687 tronçons de route, 1 844 tronçons hydrographiques, 1 181 constructions linéaires et 70 communes touchées.
Étape 1. La métropole entière, Garonne, Hers et Touch compris. - Ne garder que les cours d'eau permanents. Source troncon_hydrographique, Custom selection
"persistance" = 'Permanent': 691 tronçons.
Étape 2. Les fossés et écoulements intermittents ne comptent pas. - Vérifier la sélection sur la carte. Cliquez sur Identify dans la barre d'exploration : les 691 tronçons hydrographiques retenus par la sélection personnalisée clignotent en rouge. Ce contrôle visuel confirme la source du filtre avant de l'appliquer aux routes.

Étape 3. Identify fait clignoter la sélection personnalisée en rouge, sans modifier le filtre. - Cross. Cibles troncon_de_route et construction_lineaire, prédicat Cross seul, ligne Buffer désactivée. Filter.

Étape 4. Un seul prédicat, pas de tampon. 
Résultat à l'échelle de la métropole : les franchissements dessinent le réseau hydrographique. 
Zoom sur le nord de Toulouse : chaque segment restant est un pont ou une traversée.
Résultat
747 tronçons de route et 364 constructions linéaires (ponts, pour l'essentiel) franchissent l'un des 691 tronçons de cours d'eau permanents de la métropole. Le même calcul fait hors FilterMate avec GEOS donne les mêmes nombres.
5Débroussailler autour des maisons
BD TOPO® 3.5 © IGN, Bagnères-de-Luchon.
Le besoin
Élodie, à la mairie de Bagnères-de-Luchon, prépare une carte de la végétation proche des habitations avec une distance d’étude de 50 m. Elle distingue les bois et forêts des haies pour préparer un examen de terrain. Ce filtre ne détermine pas les obligations de débroussaillement des propriétaires.
La traduction FilterMate
Source batiment avec la sélection personnalisée "usage_1" = 'Résidentiel', cibles zone_de_vegetation et haie, Intersect, tampon de 50 m. Puis un second filtre, attributaire cette fois, sur la couche de végétation devenue source, combiné avec AND au filtre spatial précédent.
- Source
batiment- Sélection
"usage_1" = 'Résidentiel'- Cibles
zone_de_vegetation,haie- Relation
- Intersect, tampon 50 m, puis AND
- Résultat
- 58 bois et forêts, 48 haies
- Cadrer Luchon. 3 699 bâtiments, 269 zones de végétation, 123 haies.

Étape 1. La vallée habitée et les versants boisés. - Ne garder que les habitations. Source batiment, Custom selection
"usage_1" = 'Résidentiel': 1 619 bâtiments.
Étape 2. Annexes, bâtiments agricoles et industriels sont écartés de la source. - 50 m. Cibles zone_de_vegetation et haie, Intersect, Buffer 50. Filter : 119 zones de végétation et 48 haies restent.

Étape 3. Il reste des haies et des bois indifférenciés. - Ne garder que les bois et forêts. Cliquez sur zone_de_vegetation dans le panneau Couches : elle devient la source. Custom selection :
Activez la ligne Combine operator et laissez AND à gauche : le nouveau filtre restreint le filtre spatial déjà appliqué à la couche source au lieu de le remplacer."nature" IN ('Bois', 'Forêt fermée de feuillus', 'Forêt fermée de conifères', 'Forêt fermée mixte', 'Forêt ouverte')
Étape 4. Le premier bouton de la ligne Combine operator est actif, l'opérateur de gauche vaut AND. - Filter.

Zoom : les lisières proches des habitations entourent les quartiers en pente.
Résultat
Sur les 269 zones de végétation de la commune, 119 touchent la bande des 50 m autour d'une habitation, dont 58 bois et forêts ; 48 haies sont dans le même cas.
Sous le capot
Le filtre de la couche de végétation après l'étape 5 conserve la clause spatiale et lui ajoute la clause attributaire :
(ROWID IN (SELECT id FROM "rtree_zone_de_vegetation_geometrie" WHERE …)
AND ST_Intersects("geometrie", ST_Buffer(ST_MakeValid(ST_GeomFromText('MultiPolygon (…)', 2154)), 50.0)))
AND ("nature" IN ('Bois', 'Forêt fermée de feuillus', 'Forêt fermée de conifères', 'Forêt fermée mixte', 'Forêt ouverte'))
6Les hameaux éloignés des routes revêtues
BD TOPO® 3.5 © IGN, Aspet.
Le besoin
Au centre de secours d'Aspet, en pied de Pyrénées, on prépare le plan d'intervention : quels lieux-dits et zones d'activité sont à plus de 200 m d'une route revêtue, pour préparer une vérification de terrain ?
La traduction FilterMate
C'est le prédicat Disjoint avec un tampon de 200 m : garder ce qui n'a aucun point commun avec la zone tampon. Comme Disjoint retient tout ce qui est loin, y compris dans le reste du département, les couches cibles sont d'abord cadrées par un filtre attributaire sur le code INSEE, appliqué avec l'algorithme Processing de FilterMate. Le second filtre se combine alors avec AND.
- Source
troncon_de_route- Sélection
- routes revêtues
- Cibles
- lieux-dits, zones d’activité
- Relation
- Disjoint, tampon 200 m, AND
- Résultat
- 22 lieux-dits
- Cadrer Aspet spatialement pour les routes, les bâtiments et la végétation (histoire 1), puis attributairement pour les deux couches cibles : Boîte à outils → FilterMate → Filtrer plusieurs couches, couches zone_d_habitation et zone_d_activite_ou_d_interet, expression
"insee_commune" = '31020'. 87 lieux-dits et 31 zones d'activité.
Étape 1. Les deux couches cibles portent un filtre attributaire, les autres un filtre spatial. - Ne garder que les routes revêtues. Source troncon_de_route, Custom selection
"nature" NOT IN ('Chemin', 'Sentier', 'Escalier', 'Piste cyclable', 'Route empierrée'): 494 tronçons sur 1 168.
Étape 2. Les chemins et sentiers, nombreux en montagne, sont écartés. - Disjoint, 200 m, AND. Cibles zone_d_habitation et zone_d_activite_ou_d_interet, prédicat Disjoint seul, Buffer 200, ligne Combine operator active avec AND à droite (opérateur des couches cibles).

Étape 3. Disjoint plus tampon : un anneau d'exclusion. - Filter.

Étape 4. Les lieux-dits restants sont ceux qu'aucune route revêtue n'approche à moins de 200 m.
Résultat
22 lieux-dits d'Aspet sont à plus de 200 m d'une route revêtue ; aucune des 31 zones d'activité n'est dans ce cas. À 100 m, ils seraient 32.
7La bibliothèque de requêtes de l'équipe
BD TOPO® 3.5 © IGN, Grenade.
Le besoin
Julien (histoire 3) refera la bande des 300 m à chaque mise à jour de la BD TOPO et veut que ses collègues puissent la rejouer sans lui. Le filtre doit exister en dehors de sa tête : nommé, décrit, réapplicable en un clic, exportable.
La traduction FilterMate
Un favori enregistre le filtre complet : couche source, sélection, prédicats, tampon, couches cibles. Le menu s'ouvre par le badge ★ de l'en-tête ; le gestionnaire permet de renommer, décrire, changer la portée (ce projet ou tous les projets) et d'exporter en JSON. Avec l'extension de partage, un dépôt git commun sert de bibliothèque d'équipe.
- Source
- favori
- Sélection
- réglages de l’histoire 3
- Cibles
- 3 couches
- Relation
- rejoué en un clic
- Résultat
- 14 426 bâtiments, comme à l’histoire 3
- Enregistrer. Le filtre à 300 m de l'histoire 3 est appliqué. Cliquez sur le badge ★ puis Add filter, nommez-le « PPRI Garonne 300 m ».

Étape 1. La barre de messages confirme l'enregistrement ; le favori apparaît aussitôt dans la section Filtrage rapide du menu ★. - Unfilter. Les trois couches retrouvent la totalité du département : 1 173 829 bâtiments.

Étape 2. Retour à l'état non filtré. - Rejouer. Badge ★ puis « PPRI Garonne 300 m » : le filtre se réapplique, avec les mêmes 14 426 bâtiments, 178 ERP et 6 310 tronçons.

Étape 3. Même résultat, un seul clic. - Décrire et partager. Manage favorites… ouvre le gestionnaire : description, tags, portée, expression exacte, onglet Remote pour publier vers un dépôt git. Export… écrit un fichier JSON à envoyer à un collègue, qui l'importera depuis le même menu.

Étape 4. Le gestionnaire : liste à gauche, détails et expression à droite.
8Les objets modifiés depuis une date
BD TOPO® 3.5 © IGN, Haute-Garonne.
date_modification de l’édition courante. Il ne compare pas deux éditions et ne détecte pas les objets supprimés entre elles.Le besoin
Sophie administre le SIG du département et vient de recevoir l'édition de mars 2026 de la BD TOPO. Avant de la diffuser, elle veut isoler les objets dont la date de modification est postérieure au 15 mars 2025 sur quatre couches, pour un contrôle qualité, et pouvoir refaire ce contrôle dans un modèle Processing à chaque édition.
La traduction FilterMate
Pas de géométrie ici : un seul filtre attributaire à appliquer à plusieurs couches. C'est le rôle de l'algorithme filtermate:batch_filter de la boîte à outils Processing, utilisable dans le modeleur graphique, en mode batch ou depuis Python.
- Source
- Processing
- Sélection
"date_modification" >= '2025-03-15'- Cibles
- 4 couches du département
- Relation
- expression attributaire
- Résultat
- 22 954 bâtiments modifiés
- Ouvrir la boîte à outils et chercher « filtermate ».

Étape 1. Le fournisseur FilterMate et son algorithme de filtrage par lot. - Choisir les couches et l'expression. batiment, troncon_de_route, troncon_hydrographique, erp et l'expression
"date_modification" >= '2025-03-15'.
Étape 2. Un dialogue Processing ordinaire : il s'enchaîne dans un modèle comme n'importe quel autre. - Exécuter. Les quatre couches reçoivent le filtre en une passe.

Étape 3. Autour de Toulouse, les objets modifiés depuis un an.
Résultat
| Couche | Département | Modifiés depuis le 15 mars 2025 |
|---|---|---|
| troncon_de_route | 383 112 | 173 616 |
| troncon_hydrographique | 49 344 | 28 519 |
| batiment | 1 173 829 | 22 954 |
| erp | 11 384 | 3 |
La même chose depuis la console Python
import processing
processing.run("filtermate:batch_filter", {
"INPUT_LAYERS": ["batiment", "troncon_de_route", "troncon_hydrographique", "erp"],
"EXPRESSION": "\"date_modification\" >= '2025-03-15'",
})
9Les parcelles en forte pente
LiDAR HD et BD TOPO® © IGN, cadastre Etalab, Estavar (Pyrénées-Orientales).
Le besoin
À la mairie d’Estavar, en Cerdagne, on révise le document d’urbanisme : quelles parcelles du village sont pour l’essentiel sur une pente de plus de 30 %, donc peu constructibles et exposées au ravinement ?
La traduction FilterMate
Couche mnt courante : EXPLORING montre ses outils raster. La liste Compute on passe sur Slope (%) : la pente est calculée à la volée sur le MNT, sans raster intermédiaire. La plage de valeurs 30 % → maximum, lue sur l’histogramme de la pente, devient la géométrie source. FILTERING garde les parcelles couvertes à au moins 50 % par cette géométrie.
- Source
- MNT
mnt, pente calculée (%) - Sélection
- Plage de pente ≥ 30 %
- Cibles
parcelle- Relation
- Intersect, couverture ≥ 50 %
- Résultat
- 58 parcelles
- Calculer la pente. Cliquez sur mnt dans le panneau Couches, puis Compute on → Slope (%). L’histogramme montre désormais la pente.

Étape 1. Pente, exposition, ombrage et rugosité sont calculés depuis le MNT. - Choisir la plage. Cochez Value range et tapez 30 dans Min. La part des pixels retenus s’affiche sous l’histogramme : 12,9 %.

Étape 2. La queue de l’histogramme : les versants raides. Le fond de carte montre la même pente, calculée par gdaldem. - Relier aux parcelles. Cible parcelle, prédicat Intersect, cov. ≥ 50 % à côté des prédicats.

Étape 3. Sans couverture minimale, une parcelle effleurée par un talus compterait. - Filter.

Étape 4. 58 parcelles.
Résultat
58 parcelles du kilomètre carré ont au moins la moitié de leur surface sur une pente de plus de 30 %. Le même filtre avec un raster de pente précalculé (gdaldem slope -p) donne le même nombre.
10La hauteur du bâti, mesurée par le LiDAR
LiDAR HD et BD TOPO® © IGN, cadastre Etalab, Estavar (Pyrénées-Orientales).
Le besoin
Le règlement d’urbanisme limite la hauteur des constructions. Le service instructeur veut repérer les bâtiments du village qui dépassent 9 m au-dessus du terrain naturel, mesurés et non déclarés.
La traduction FilterMate
Couche nuage de points courante. Dans ATTRIBUTES, une condition Classification = 6 (bâtiment) et la hauteur au-dessus du MNT ≥ 9 m, calculée par PDAL au premier filtre. L’empreinte des points retenus est la géométrie source ; une couverture de 50 % écarte les voisins mitoyens.
- Source
- nuage LiDAR HD (COPC)
- Sélection
Classification = 6et hauteur ≥ 9 m- Cibles
batiment- Relation
- Intersect, couverture ≥ 50 %
- Résultat
- 57 bâtiments
- Les points de bâtiment. Cliquez sur lhd, cochez ATTRIBUTES, + Condition, puis Classification = 6. Le bouton œil les isole sur la carte.

Étape 1. Les classes sont aussi des conditions : elles se combinent avec la hauteur. - La hauteur. Cochez Height above DTM ≥, tapez 9 et choisissez le MNT mnt.

Étape 2. PDAL calcule la hauteur au premier filtre, une fois pour la couche. - Relier au bâti. Cible batiment, Intersect, cov. ≥ 50 %.

Étape 3. - Filter. La hauteur est calculée en 75 s sur 20,4 millions de points, puis le filtre est immédiat.

Étape 4. 57 bâtiments.
Résultat
57 bâtiments sur 668 ont au moins la moitié de leur emprise sous des points de toit à plus de 9 m. La BD TOPO en déclare 68 de 9 m ou plus : les écarts sont à vérifier sur place.
11Les routes à élaguer
LiDAR HD et BD TOPO® © IGN, cadastre Etalab, Estavar (Pyrénées-Orientales).
Le besoin
L’exploitant de la voirie communale prépare la campagne d’élagage : quels tronçons sont bordés d’arbres de plus de 8 m à moins de 3 m de la chaussée ?
La traduction FilterMate
Même mouvement que l’histoire 10 : Classification = 5 (végétation haute) et hauteur ≥ 8 m. Cette fois les cibles sont des lignes : troncon_de_route, avec un tampon de 3 m autour de l’empreinte des arbres.
- Source
- nuage LiDAR HD
- Sélection
Classification = 5et hauteur ≥ 8 m- Cibles
troncon_de_route- Relation
- Intersect, tampon 3 m
- Résultat
- 91 tronçons sur 172
- La végétation haute. ATTRIBUTES, + Condition, Classification = 5, puis l’œil pour la voir.

Étape 1. - Plus de 8 m. Height above DTM ≥ 8 sur le MNT.

Étape 2. Les haies basses et les buissons sortent du filtre. - 3 m de la chaussée. Cible troncon_de_route, Intersect, Buffer 3.

Étape 3. - Filter.

Étape 4. 91 tronçons.
Résultat
91 tronçons sur 172 ont des arbres de plus de 8 m à moins de 3 m : la liste de départ de la campagne, à hiérarchiser sur le terrain.
12Le lot de relevé autour de l’église
LiDAR HD et BD TOPO® © IGN, cadastre Etalab, Estavar (Pyrénées-Orientales).
Le besoin
Un architecte du patrimoine prépare la restauration de l’église d’Estavar. Il demande le nuage de points et le MNT de l’église et de ses abords, à 50 m, dans un fichier qu’il peut ouvrir sans QGIS.
La traduction FilterMate
Source vecteur, cibles raster et nuage : batiment avec "nature" = 'Eglise', tampon de 50 m, cibles mnt et lhd. Le MNT est découpé en VRT, le nuage en COPC dérivé ; les couches gardent leur identifiant et leur style. EXPORTING écrit ensuite GeoTIFF et LAZ dans un ZIP.
- Source
batiment- Sélection
"nature" = 'Eglise'- Cibles
mnt(raster),lhd(nuage)- Relation
- Intersect, tampon 50 m
- Résultat
- GeoTIFF 45 Ko + LAZ 1,0 Mo
- L’église. Source batiment, Custom selection
"nature" = 'Eglise'.
Étape 1. - 50 m autour, sur le MNT et le nuage. Cibles mnt et lhd, Intersect, Buffer 50.

Étape 2. Un raster et un nuage dans la même liste de cibles que des vecteurs. - Filter.

Étape 3. Undo rendrait les couches entières. - Exporter. EXPORTING : couches mnt et lhd, dossier, chemin du ZIP, Export.

Étape 4.
Résultat
Un ZIP de 1,1 Mo : le MNT (GeoTIFF, 45 Ko) et le nuage (LAZ, 1,0 Mo) de l’église et de ses abords.
13La végétation sur une orthophoto RVB
Raster → raster · schéma de principe.
Le besoin
Le service des espaces verts prépare une carte de la végétation. Il dispose d’une orthophoto infrarouge couleur pour repérer les couverts végétaux et veut montrer ces zones sur l’orthophoto RVB, plus facile à lire pour ses collègues.
La traduction FilterMate
L’image ortho_irc est la source. Dans EXPLORING, l’expression NDVI > 0,3 sélectionne les pixels. Leur géométrie découpe la cible ortho_rvb avec Intersect : les couleurs de la cible sont conservées dans le masque, les autres pixels passent en NoData.
- Source
ortho_irc- Sélection
- NDVI > 0,3
- Cible
ortho_rvb- Relation
- Intersect, sans tampon
- Résultat attendu
- Ortho RVB masquée en VRT
- Identifier les bandes. Choisissez ortho_irc comme couche courante. Dans EXPLORING, ouvrez le menu d’un rôle de couleur et choisissez IRC si les bandes 1, 2 et 3 sont respectivement le proche infrarouge, le rouge et le vert. Adaptez les rôles si le fichier utilise un autre ordre.
- Choisir la végétation. Cochez RASTER EXPRESSION, puis Insert → Vegetation (NDVI > 0.3). Pour une image IRC dont le PIR est en bande 1 et le rouge en bande 2, l’expression est :
Activez l’aperçu avec le bouton de sélection et ajustez le seuil en comparant les zones retenues avec l’image.("ortho_irc@1" - "ortho_irc@2") / ("ortho_irc@1" + "ortho_irc@2") > 0.3 - Relier à l’autre image. Dans FILTERING, cochez ortho_rvb dans Layers to filter, choisissez Intersect et désactivez le tampon. Pour ce premier essai, partez d’une cible non filtrée et laissez la combinaison décochée.
- Filter, puis exporter. Masquez la source pour lire la cible seule. EXPORTING peut écrire le résultat en GeoTIFF ou en COG ; Undo rétablit l’orthophoto cible entière.
Résultat attendu
Une couche RVB découpée suivant le masque NDVI, avec son style et son identifiant conservés. Le seuil de 0,3 est un point de départ à contrôler selon la saison, les ombres et les caractéristiques des images.
14Les points LiDAR sous les toits
Raster → nuage de points · schéma de principe.
Le besoin
Un bureau d’études prépare le relevé de plusieurs toitures reconnaissables sur une orthophoto. Il veut extraire les points LiDAR à leur aplomb sans dessiner chaque contour dans une couche vectorielle.
La traduction FilterMate
La source est le raster ortho_rvb. La pipette en mode Clicked object suit les pixels connexes de couleur similaire au point cliqué. Les objets retenus deviennent la géométrie source ; Intersect découpe le nuage lhd dans cette emprise.
- Source
ortho_rvb- Sélection
- Pipette, objet cliqué
- Cible
lhd- Relation
- Intersect, sans tampon
- Résultat attendu
- Nuage découpé sous les objets
- Se placer sur la toiture. Choisissez ortho_rvb comme couche courante et zoomez sur un toit dont la couleur se distingue de ses abords. Vérifiez les rôles rouge, vert et bleu dans EXPLORING.
- Détecter l’objet. Dans la pipette, choisissez Clicked object, puis cliquez dans la toiture. Ajustez la tolérance en contrôlant le contour affiché sur la carte. Ctrl+clic ajoute un relevé pour une autre partie du toit ou une autre toiture.
- Relier au nuage. Dans FILTERING, cochez lhd dans Layers to filter. Choisissez Intersect, sans tampon. Partez d’un nuage cible non filtré pour conserver tous les retours situés dans l’emprise sélectionnée.
- Filter et contrôler. Masquez l’orthophoto pour examiner les points, puis vérifiez leur emprise en réaffichant l’image. EXPORTING permet une livraison LAZ ou COPC ; Undo restitue le nuage complet.
Résultat attendu
Un nuage dérivé limité à l’aplomb des pixels retenus. Le filtre est spatial : tous les retours dans cette emprise peuvent rester, y compris des points de sol ou de végétation. Pour ne garder que les points classés bâtiment, appliquez ensuite Classification = 6 sur le nuage obtenu.
15Le MNT au droit des points sol
Nuage de points → raster · schéma de principe.
Le besoin
Une géomètre prépare un contrôle du terrain naturel. Elle dispose d’un MNT interpolé et du nuage classé d’origine. Elle veut limiter la lecture du raster aux secteurs où des points sol sont présents dans le relevé.
La traduction FilterMate
Le nuage lhd est la source. Dans EXPLORING, le préréglage Ground retient uniquement la classe 2. L’empreinte de ces points découpe le raster cible mnt, avec Intersect et sans tampon.
- Source
lhd- Sélection
Classification = 2- Cible
mnt- Relation
- Intersect, sans tampon
- Résultat attendu
- MNT limité à l’empreinte du sol
- Lire la classification. Choisissez lhd comme couche courante. Dans EXPLORING, ouvrez CLASSES et vérifiez que la classe 2 – Ground comporte des points.
- Garder le sol. Dans le menu Selection, choisissez Ground. Vérifiez que seule la classe 2 est cochée, puis utilisez le bouton de sélection pour prévisualiser les points sur la carte.
- Relier au MNT. Cochez mnt dans Layers to filter, choisissez Intersect et désactivez le tampon. Utilisez une cible non filtrée et laissez la combinaison décochée.
- Filter, puis lire le raster. Masquez le nuage pour voir le MNT découpé. EXPORTING écrit le résultat en GeoTIFF ou COG ; Undo restaure le MNT entier et l’état précédent de la source.
Résultat attendu
Un VRT du MNT dont les pixels extérieurs à l’empreinte des points sol sont en NoData. Les altitudes existantes sont conservées : cette opération découpe le MNT, elle ne l’interpole pas à nouveau.
16La végétation près des lignes électriques
Nuage de points → nuage de points · schéma de principe.
Le besoin
Un gestionnaire de réseau prépare une visite des secteurs boisés. À partir d’un relevé où les câbles sont classés, il veut extraire la végétation haute à proximité des lignes pour organiser les contrôles.
La traduction FilterMate
Deux couches de nuage ont des rôles distincts : lhd_reseau fournit les points de câble (classes 13 et 14) ; lhd_vegetation est d’abord filtrée sur la classe 5. Le tampon de 10 m autour de l’empreinte des câbles découpe ensuite cette cible.
- Source
lhd_reseau- Sélection
- Classes 13 et 14
- Cible
lhd_vegetation, classe 5- Relation
- Intersect, tampon 10 m
- Résultat attendu
- Végétation du corridor
- Préparer deux couches. Chargez le nuage deux fois dans QGIS, ou dupliquez sa couche. Nommez les couches lhd_reseau et lhd_vegetation. Utilisez un SCR métrique pour le tampon de 10 m, par exemple Lambert-93 en France métropolitaine. Vérifiez la présence des classes 13 – Wire – guard ou 14 – Wire – conductor, et de la classe 5 – High vegetation.
- Préparer la végétation cible. Laissez « appliquer aux autres dalles du jeu » désactivé sur les deux couches pour conserver leurs sélections indépendantes. Choisissez lhd_vegetation comme couche courante. Dans CLASSES, ne cochez que la classe 5. Décochez Layers to filter et cliquez sur Filter pour appliquer la sélection à cette couche seule.
- Choisir les câbles. Passez sur lhd_reseau. Dans CLASSES, ne cochez que les classes 13 et 14 présentes. Le bouton de sélection permet de contrôler les points qui formeront l’empreinte source.
- Découper le corridor. Dans FILTERING, cochez lhd_vegetation, choisissez Intersect et réglez Buffer sur 10 m. Cliquez sur Filter : le découpage conserve le filtre de classe déjà appliqué à la cible. Masquez la source pour examiner le résultat, puis exportez la cible en LAZ ou COPC.
Résultat attendu
Une couche de végétation haute limitée au corridor autour de l’empreinte des points de câble. La distance est calculée en plan, à partir d’une empreinte sur grille : elle sert au repérage des secteurs à examiner. La distance réelle en trois dimensions entre les branches et les conducteurs demande une analyse complémentaire du nuage.
17Rejouer ces histoires chez vous
La démonstration de Toutens contient quatre couches, un projet QGIS, un favori et des instructions en français et en anglais. Ses effectifs diffèrent des exemples départementaux ci-dessus.
Télécharger la démo (ZIP, 203 Ko)- Téléchargez la BD TOPO de votre département sur la Géoplateforme de l'IGN (thème « Tous thèmes », format GeoPackage, projection Lambert-93). Le fichier est livré avec ses index spatiaux : c'est ce qui rend les cascades rapides.
- Chargez les couches nommées dans chaque histoire. Les styles embarqués dans le GeoPackage cachent les bâtiments au-delà du 1:25 000 : désactivez la visibilité dépendante de l'échelle dans les propriétés de la couche, ou appliquez vos propres styles.
- Remplacez les noms de communes par les vôtres. Les champs utilisés (
nom_officiel,importance,persistance,usage_1,nature,insee_commune,date_modification) sont ceux de la BD TOPO 3.x, identiques dans tous les départements. - Pour reproduire les captures des cas 1 à 8, le script
scripts/recipe_screenshots.pydu dépôt pilote QGIS d'un bout à l'autre de chaque histoire, vérifie les effectifs et enregistre une image par étape. Les enregistrements des cas 9 à 12 sont préparés parscripts/site_videos.py. - Pour les recettes illustrées 13 à 16, chargez les couches nommées dans chaque recette et suivez les réglages indiqués. Les schémas représentent les résultats attendus ; les surfaces et les effectifs dépendront de vos données.