Pages: 1
- Sujet précédent - QGIS: Transformer 1 ligne discontinue en N lignes discontinues - Sujet suivant
#1 Mon 17 July 2017 00:32
- wilyfe
- Juste Inscrit !
- Date d'inscription: 16 Jul 2017
- Messages: 9
QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Bonjour à tous,
Dans le cadre de mon travail de fin d'étude je dois réaliser une analyse grâce à QGIS. Je travail avec la version 2.18.10.
J'ai des polygones qui représentent des zones dans lesquelles j'ai des passages de cerf représentés par des lignes discontinues. je dois déterminer le nombre de lignes disjointes par polygones. Je m'explique:
J'ai un shapefile composé d'une entité (une ligne discontinue). j'aimerais que pour chaque bout de ligne discontinu qui compose ma ligne discontinue, une entité soit créée. Seulement, l'outil de géométrie "morceaux multiples à morceaux unique"QGIS me crée des bouts de ligne aléatoirement et non des entités pour chaque bout de ligne discontinu. je me retrouve donc avec plus d'entité que ce qu'il m'en faut.
Auriez-vous une idée pour réaliser l'opération souhaitée ?
Si vous avez besoin de plus de précision pour comprendre mon problème n'hésitez pas.
Merci d'avance
Dernière modification par wilyfe (Mon 17 July 2017 10:42)
Hors ligne
#2 Mon 17 July 2017 12:20
- Florent LUQUET
- Participant occasionnel
- Lieu: Vallet
- Date d'inscription: 24 Mar 2016
- Messages: 12
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Bonjour,
Si j'ai bien compris, il faut assembler les morceaux de lignes qui ont un points de contact entre elles.
Voici une solution qui fait appel à postgis :
1) Scinder en entités uniques avec la commande de QGIS (celle utilisée dans votre message).
2) Sous Postgis, on utilisera les commandes suivantes :
Code:
ST_ClusterWithin
qui assemble les entités à une distance inférieure à x
Code:
unnest
pour convertir en ligne le tableau de géométries obtenu avec la commande précédente.
Puis
Code:
ST_CollectionExtract
pour convertir la "geometrie collection" en mutilignes.
Soit :
Code:
WITH clusters AS ( SELECT unnest(ST_ClusterWithin(geom, 1e-8)) AS geom FROM public.morceaux ) SELECT row_number() OVER () AS id, ST_CollectionExtract(geom, 2) AS geom FROM clusters
Et ça marche plutôt bien.
Bonne continuation
Hors ligne
#3 Mon 17 July 2017 12:31
- wilyfe
- Juste Inscrit !
- Date d'inscription: 16 Jul 2017
- Messages: 9
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Merci pour votre réponse.
Cependant, je me pose une question : ne risque t'il pas d'y avoir des interférences lorsque des lignes se croisent ?
Le codage que vous avez détaillez dans votre réponse est à mettre dans la fenêtre "Query editor" de l'extension "postgisSQL" ?
Merci
Hors ligne
#4 Mon 17 July 2017 13:24
- Florent LUQUET
- Participant occasionnel
- Lieu: Vallet
- Date d'inscription: 24 Mar 2016
- Messages: 12
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Oui effectivement en cas de croisements ça va prendre les deux lignes...
Personnellement j'utilise le gestionnaire BD de QGIS, il y aune fenêtre d’exécution de requêtes SQL avec affichage direct sur la carte. Plutôt pratique.
Hors ligne
#5 Mon 17 July 2017 13:45
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Bonjour,
Que signifie aléatoirement ?
Si vous avez une polyligne composée de 3 morceaux disjoints et que utilisez la fonction "morceaux multiples à morceaux unique", il devrait vous sortir 3 lignes.
Auriez-vous un échantillon de vos données, que l'on pourrait examiner ?
geodata au cerema et petits billets en géomatique
Hors ligne
#6 Tue 18 July 2017 09:50
- Florent LUQUET
- Participant occasionnel
- Lieu: Vallet
- Date d'inscription: 24 Mar 2016
- Messages: 12
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Bonjour,
Surement une piste pour éviter les intersections.
A tester :
https://gis.stackexchange.com/questions … 269#177269
Hors ligne
#7 Tue 18 July 2017 10:52
- wilyfe
- Juste Inscrit !
- Date d'inscription: 16 Jul 2017
- Messages: 9
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Bonjour,
Merci pour votre réponse.
De quoi auriez-vous besoin quand vous parlez d'échantillons ? Du shapefile ?
Hors ligne
#8 Tue 18 July 2017 11:00
- wilyfe
- Juste Inscrit !
- Date d'inscription: 16 Jul 2017
- Messages: 9
Re: QGIS: Transformer 1 ligne discontinue en N lignes discontinues
Quand je dis aléatoirement, je veux dire par là que certaines lignes qui sont continues sont divisées en plusieurs entités
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Transformer 1 ligne discontinue en N lignes discontinues - Sujet suivant