#1 Tue 06 April 2021 13:24
- Celo
- Participant occasionnel
- Date d'inscription: 20 Jun 2019
- Messages: 12
Suppression des entités (ligne) qui se superposent
Bonjour,
Je vous expose mon problème, j'ai plusieurs shp linéaire qui correspondent à plusieurs années en l’occurrence 2018,2019 et 2020. Dans mes tables attributaires chaque ligne correspond à une polyligne.
Je souhaite supprimer les polylignes de mes shp 2018 2019 qui se superposent avec mon shp de l'année 2020. Auriez-vous une idée de comment faire ça ?
Je vous remercie d'avance.
Hors ligne
#2 Tue 06 April 2021 16:10
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
Re: Suppression des entités (ligne) qui se superposent
Bonjour Celo,
Si vos géométries sont exactement les mêmes, vous deviez pouvoir le faire en SQL spatial.
Mais cela sous-entends de maîtriser le SQL, je ne sais pas si c'est votre cas. Si oui :
- fusionner (union) les couches SHP en une seule, en vérifiant bien que l'année est présente en attribut de chaque entité (un champ "annee" par ex).
- faire une sélection de type "GROUP BY" sur la base de la géometrie :
Code:
SELECT champs, max(annee) as annee_max FROM COUCHE GROUP BY geometry
Dernière modification par Sylvain M. (Tue 06 April 2021 16:11)
Sylvain M.
Hors ligne
#3 Tue 06 April 2021 16:29
- Celo
- Participant occasionnel
- Date d'inscription: 20 Jun 2019
- Messages: 12
Re: Suppression des entités (ligne) qui se superposent
Malheureusement je ne maîtrise pas bien le SQL.
J'ai fusionné mes couches grâce à l'outil "combiner" de arcmap ==> Nouvelle couche qui regroupe mes précédentes couches ==> TT_COUCHE
De ce que je comprends de votre code. Je dois remplacer "champs" par le nom de mon champs année, max(année) calcul l'année maximum de mon entité et le renvoie dans une nouvelle colonne nommée "année_max. From couche correspond à ma couche initial.
Est ce-cela ?
merci
Dernière modification par Celo (Tue 06 April 2021 16:30)
Hors ligne
#4 Tue 06 April 2021 16:58
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
Re: Suppression des entités (ligne) qui se superposent
Malheureusement, si vous travaillez sur ArcMap, cela n'est a priori pas possible en SQL.
Il y a certainement des outils, mais je ne saurai vous orienter sur ce logiciel.
De ce que je comprends de votre code. Je dois remplacer "champs" par le nom de mon champs année
Non, "champs" correspondait aux champs de votre couche que vous souhaitez conserver après regroupement.
Par exemple :
Code:
SELECT champ1, champ2, champ3, max(annee), geometry FROM coucheinitiale GROUP BY champ1, champ2, champ3, geometry
cette requête sélectionne 3 champs de la couche initiale (champ 1 à 3), l'année maximale et la géométrie pour chaque tronçon (géométrie) de ligne.
Si vous avez accès à QGis, cela peut se faire via le "Gestionnaire de Bases de données".
Mais si vous partez sur cette option, avant de vous creuser la tête là comprendre, il faut vraiment être sûr que les géométries sont parfaitement identiques : un simple nœud de différence et ça ne marchera pas.
Si vous voulez rester sur ArcMap, vous pourriez poser la question dans la section dédiée.
Bon courage !
Sylvain M.
Hors ligne
#5 Wed 07 April 2021 10:40
- Celo
- Participant occasionnel
- Date d'inscription: 20 Jun 2019
- Messages: 12
Re: Suppression des entités (ligne) qui se superposent
Normalement les géométries sont les mêmes car les deux shp correspondent au même référentiel.
Malheureusement je pense que je ne suis pas assez calé en SQL pour pouvoir avoir un résultat.
Une autre idée serait de faire un buffer de mon SHP 2020 et renvoyer toutes les polylignes qui ne font pas partie de ce buffer. Savez-vous comment je peux faire ça ? Pour faire simple, ce serait faire l'inverse de l'outil couper dans qgis.
Merci !
Hors ligne
#6 Wed 07 April 2021 17:42
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
Re: Suppression des entités (ligne) qui se superposent
Et avec les géotraitements de base d'ArcMap : Combiner ou Fusionner ?
En théorie, ça devrait faire l'affaire ?
Sylvain M.
Hors ligne
#7 Wed 07 April 2021 17:52
- Celo
- Participant occasionnel
- Date d'inscription: 20 Jun 2019
- Messages: 12
Re: Suppression des entités (ligne) qui se superposent
J'ai trouver la solution.
Dans Arcgis ==> Sélectionner une couche selon l'emplacement ==> Dans relation mettre "within" + Cocher la case "inverser la relation spatiale".
Merci quand même !
Hors ligne