Pages: 1
- Sujet précédent - QGIS: Couche de lignes depuis 1 seule couche de points lies - Sujet suivant
#1 Fri 02 December 2022 01:58
- lylambda
- Participant actif
- Date d'inscription: 31 Aug 2016
- Messages: 127
QGIS: Couche de lignes depuis 1 seule couche de points lies
Bonjour,
Je cherche à créer une couche de lignes à partir d'une couche de points.
La couche de point est structurée sous la forme de l'exemple suivant :
Point | Points liés
A | B
B | A -D - F
C | E
D | B -F
E | C
F | B - D
G | NULL
Mon objectif est de générer une couche de lignes faisant apparaitre ces relations, déterminées par les champs "Point" et "Points liés".
C'est à dire, pour l'exemple ci-dessus, les segments suivants : AB, BD, BF, CE, DF
Graphiquement, cela pourrait donner :
A-----B---D
| / C----E
| /
| / G
F
J'ai essayé sans succès avec les traitements "Points vers lignes" ou "Rejoindre par des lignes".
Soit je m'y prend mal, soit ces traitements ne sont pas adaptés au besoin évoqué.
Pourriez-vous m'orienter ?
Merci !
Hors ligne
#2 Wed 07 December 2022 09:26
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1059
Re: QGIS: Couche de lignes depuis 1 seule couche de points lies
Bonjour,
Un début de réponse par ici (en italien) : https://isolution.pro/it/q/gi13352182/g … n-le-linee
Hors ligne
#3 Thu 08 December 2022 10:08
- lylambda
- Participant actif
- Date d'inscription: 31 Aug 2016
- Messages: 127
Re: QGIS: Couche de lignes depuis 1 seule couche de points lies
Apparemment, c'est plus une solution pour générer une géométrie et non créer une nouvelle couche, mais c'est une bonne piste
Merci, je vais regarder ça !
Pour info, remplacer "it" par "fr" dans l'adresse transmise donne une traduction correct en français.
Hors ligne
#4 Fri 09 December 2022 10:13
- lylambda
- Participant actif
- Date d'inscription: 31 Aug 2016
- Messages: 127
Re: QGIS: Couche de lignes depuis 1 seule couche de points lies
De ce que je comprend, que ce soit pour générer une géométrie via la symbologie ou créer des lignes via le traitements "Rejoindre par des lignes (lignes de hub)", il faut que je remanie la couche initiale.
Après l'avoir étudiée de manière plus approfondie, ma couche de travaille semble être en fait une liste de points "parents" (ou "pivot" ou "hub") avec un champ listant les points "enfant" (ou "pointe" ou "spoke").
La représentation graphique que je cherche à obtenir est la suivante :
A<-----B--->D
| C---->E
|
| G
\/
F------>H
Basée sur une couche structurée sous la forme suivante :
Liste | Enfant
A |
B | A -D - F
C | E
D |
E |
F | H
G |
H |
>> Ainsi chaque élément du champ "Liste" est en réalité un "Parent" pouvant avoir zéro à plusieurs "Enfant".
Tandis qu'un "Enfant" n'aura toujours que zero ou un seul "Parent" (contrairement à l'exemple sur mon 1er message).
Pour pouvoir créer des lignes dans QGIS, reliant chaque élément de "Liste" à ses "Enfant" (techniquement, un Oursin d’après la doc que j'ai trouvé), je dois afficher la relation inverse.
C'est à dire, créer un champ indiquant l'éventuel "Parent" de chaque élément de "Liste". Soit, pour reprendre l'exemple ci-dessus :
Liste | Enfant | Parent
A | | B
B | A -D - F |
C | E |
D | | B
E | | C
F | H | B
G | |
H | | F
Et c'est là que j'ai besoin d'aide :
Par quelle formule puis-je renseigner entité par entité l'éventuel "Parent" ?
Concrètement, il faut que je demande à QGIS via une expression, d'indiquer dans le champ "Parent" de chaque entité, la valeur de "Liste" d'une autre entité de la table si sa valeur "Enfant" contient la valeur de "Liste" de l'entité.
Exemple : Si "Liste" = 'A' alors "Parent" = 'B, puisque "Liste" = 'B' correspond à "Enfant" contenant 'A'
J'avoue ne pas maitriser les fonctions comme aggregate...
Si ce puzzle vous parait simple, je suis prenneur de votre solution !
Dernière modification par lylambda (Fri 09 December 2022 10:36)
Hors ligne
Pages: 1
- Sujet précédent - QGIS: Couche de lignes depuis 1 seule couche de points lies - Sujet suivant