#1 Sun 06 August 2023 12:53
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
QGIS: Creation automatique de polygones
Bonjour,
Je dois créer des polygones représentant des plateformes d'accès à des pylônes avec des surfaces variables :
- 10*20m
- 5*15m
- 10*15m
- ...
Plutôt que de les créer manuellement, existe-t-il un moyen par un clic de faire apparaître une fenêtre qui proposerait une liste des différentes plateformes dont le centre serait l'endroit du clic?
Merci.
Hors ligne
#2 Mon 07 August 2023 10:03
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1088
Re: QGIS: Creation automatique de polygones
Bonjour,
Une première piste qui pourrait vous aiguillez :
https://gis.stackexchange.com/questions … from-point
Hors ligne
#3 Fri 22 September 2023 12:00
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour,
Merci pour ce lien. Cela fonctionne pour créer les formes voulues.
Seulement cela crée une symbologie selon la surface voulue et non un polygone à proprement parler sur lequel je pourrais faire des actions de pivot.
Y-a-t-il un moyen de créer directement un polygone, c'est à dire à chaque fois que je crée un point, cela va alimenter une couche de polygones avec les dimensions voulues?
Merci.
Hors ligne
#4 Fri 22 September 2023 14:01
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
En fait cela ne fonctionnait pas parce que j'étais parti dans l'idée qu'il fallait partir d'une couche de points, pour ensuite créer une couche de polygones. Je pars donc d'une couche de polygones pour arriver à créer des entités polygonales à la forme voulue. Mais là cela coince.
En effet, de même qu'à partir d'une couche de points, j'arrive à créer des polygones avec cette expression :
bounds(make_line( make_point( $x- ("X_DIM" /2),$y) , make_point( $x+ ("X_DIM" /2),$y) ,make_point( $x,$y- ("Y_DIM" /2)) , make_point( $x,$y+ ("Y_DIM" /2)) ) )
Mais cela reste des points, comment faire pour faire la même chose avec une couche polygonale?
Merci.
Hors ligne
#5 Fri 22 September 2023 15:11
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Je viens d'essayer ceci
bounds(make_polygon( make_point( $x- ("X_DIM" /2),$y) , make_point( $x+ ("X_DIM" /2),$y) ,make_point( $x,$y- ("Y_DIM" /2)) , make_point( $x,$y+ ("Y_DIM" /2)) )
ou encore ceci
make_polygon( make_point( $x- ("X_DIM" /2),$y) , make_point( $x+ ("X_DIM" /2),$y) ,make_point( $x,$y- ("Y_DIM" /2)) , make_point( $x,$y+ ("Y_DIM" /2)) )
Le polygone reste invisible.
Je précise que ces expressions sont dans le générateur de géométrie.
Hors ligne
#6 Fri 22 September 2023 16:01
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS: Creation automatique de polygones
Bonjour,
Désolé, je précise que j'ai lu en diagonale
Je précise que ces expressions sont dans le générateur de géométrie.
- Vous pensez à bien indiquer le type de géométrie attendu, à savoir polygone/multipolygone?
- On parle bien du générateur dans les options de symbologie? Auquel cas, est-ce que la géométrie escomptée apparaît au moins dans la vignette de symbole en haut gauche de la fenêtre?
- Et on est bien d'accord que le générateur de géométrie ne fait que de l'affichage? vous n'allez pas vous retrouver avec de vrais polygones dans votre couche (de points). Par contre, sous réserve que votre expression soit correcte, vous pouvez peut-être essayer l'algorithme Géométrie par expression à partir de votre couche de points.
Hors ligne
#7 Fri 22 September 2023 16:57
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour Santanna,
Ce que je recherche c'est qu'à partir d'une couche de polygones vide, je puisse créer automatiquement des polygones avec des superficies désirées.
on est bien d'accord que le générateur de géométrie ne fait que de l'affichage?
C'est bien là le hic je cherche vraiment à créer des entités polygonales et non des symbologies de polygones. Donc je pense que le générateur d'expressions dans la symbologie ne peut me convenir.
Je vais voir du côté de "Géométrie par expression".
Merci.
Hors ligne
#8 Sat 23 September 2023 19:55
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Mon objectif à terme :
Créer des polygones avec des surfaces variables de 10*15m, 10*10m et 20*20m. Mon idée serait de créer un polygone quelconque à 4 côtés et de pouvoir, moyennant une fenêtre lors de la création de ce polygone me proposant ces différentes surfaces, de modifier ce polygone aux dimensions désirées.
Est-ce possible?
J'ajoute que si cela réussit, l'idée serait de récupérer cette automatisation sur Qfield pour des saisies sur terrain.
Est-ce possible?
Merci.
Hors ligne
#10 Mon 25 September 2023 09:24
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour Elise,
C'est un plugin intéressant, mais cela marchera-t-il dans Qfield?
Hors ligne
#12 Mon 25 September 2023 11:00
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Honnêtement, je ne pense pas non plus.
Je pense que c'est plutôt du côté de Géométrie par expression qu'il faut passer.
J'ai bien essayé make_polygon dans une couche de polygone mais sans succès...
Le polygone crée devient invisible.
Hors ligne
#13 Mon 25 September 2023 11:35
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS: Creation automatique de polygones
Bonjour,
Je n'ai pas récemment utilisé QField mais il ne me semblait pas qu'il y avait moyen d'embarquer des plugins de QGIS dedans.
Quelle utilisation les gens sur le terrain vont avoir de ce polygone? Si c'est juste visuel, la symbologie devrait faire la blague dans QField. Et s'il vous faut des polygones dans une couche en dur, ce sera fait ultérieurement avec l'algorithme précité, (à moins que QField ne permette d’utiliser les algorithmes?).
make_polygon( make_point( $x- ("X_DIM" /2),$y) , make_point( $x+ ("X_DIM" /2),$y) ,make_point( $x,$y- ("Y_DIM" /2)) , make_point( $x,$y+ ("Y_DIM" /2)) )
la fonction make_polygon prend en arguments du linéaire, pas une liste de points (cf. son aide) donc il vous faut construire le linéaire entre-deux soit (attention à l'ordre des points)
Code:
make_polygon( make_line( make_point( $x - ("X_DIM" /2) ,$y) ,make_point( $x, $y- ("Y_DIM" /2)) ,make_point( $x+ ("X_DIM" /2),$y) , make_point( $x, $y+ ("Y_DIM" /2)) ) )
Hors ligne
#14 Mon 25 September 2023 14:07
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour Santanna,
Quelle utilisation les gens sur le terrain vont avoir de ce polygone?
Les gens sur le terrain vont créer des plateformes (des polygones) d'accès aux supports pour des raisons de travaux.
Vu la difficulté de dessiner des polygones réguliers et aux dimensions voulues, mon souhait est de leur proposer un moyen de les créer de manière automatisée.
Si cela n'est pas possible sur le terrain (à vérifier tout de même), il faut donc saisir les données et renseigner les champs
- X_DIM
- Y_DIM
Ensuite récupérer ces données dans Qgis et appliquer la fonction
make_polygon(
make_line(
make_point( $x - ("X_DIM" /2) ,$y)
,make_point( $x, $y- ("Y_DIM" /2))
,make_point( $x+ ("X_DIM" /2),$y)
, make_point( $x, $y+ ("Y_DIM" /2))
)
)
Je l'ai testé dans Qgis dans une couche de polygones mais cela reste toujours invisible. Il faut bien la tester dans une couche de polygones?
Merci.
Hors ligne
#15 Mon 25 September 2023 16:58
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS: Creation automatique de polygones
Couche de points. L'idée c'est que les collaborateurs rentrent le point et les dimensions. Pas qu'ils dessinent un (pseudo)polygone approximatif.
Hors ligne
#16 Mon 25 September 2023 17:11
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
La forme est créée dans l'onglet symbologie. Mais cela ne reste qu'une symbologie. Ce dont j'ai besoin c'est un polygone en sortie. Je suis désolé Santanna, je crains n'avoir pas été très clair dans mes explications.
Hors ligne
#17 Mon 25 September 2023 18:19
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS: Creation automatique de polygones
Non, c'était bien explicite. Et la solution que je proposais était bien de faire de faire une couche de points.
De ce que vous dites
Les gens sur le terrain vont créer des plateformes (des polygones) d'accès aux supports pour des raisons de travaux.
A priori, à part créer le polygone et indiquer ses attributs, les gens n'ont pas d'action de numérisation supplémentaire à effectuer sur le terrain. Et je comprends aussi que les modèles de plateformes sont connus et "générables" via une formule, donc à quoi bon les em*** à essayer de numériser un polygone normé sur le terrain, s'il peuvent juste indiquer le point central, avoir le rendu carto qui va bien sur le coup? Quitte à générer la couche polygone proprement dite, une fois de retour du terrain? Donc de mon point de vue, la couche point avec symbologie fait la blague.
Maintenant, s'il vous faut absolument une couche polygone, vous pouvez aussi essayer une couche polygone virtuelle, dont la géométrie sera également calculée à la volée à partir de .... la couche points (c'est tellement plus facile d'ajouter juste un point...). Remarquez, ça vous épargne l'étape d'exécution de l'algorithme pour créer les polygones. Mais là aussi, pas d'édition manuelle de polygone en live possible.
Il va de soi que je ne vous pousse/force pas dans cette voie, j'essayais juste d'expliciter plus clairement ma suggestion.
Hors ligne
#18 Mon 25 September 2023 19:44
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Santanna,
Voici mon projet :
- relever les plateformes sur le terrain avec qfield et photos jointes
- récupérer le projet dans qgis
- exporter la couche des plateformes au format kmz pour la visualiser dans Google Earth
Et je comprends aussi que les modèles de plateformes sont connus et "générables" via une formule, donc à quoi bon les em*** à essayer de numériser un polygone normé sur le terrain, s'il peuvent juste indiquer le point central, avoir le rendu carto qui va bien sur le coup?
Le souci est que je n'ai pas besoin de rendu carto, une couche polygone est attendue
Quitte à générer la couche polygone proprement dite, une fois de retour du terrain?
Comment générer la couche polygonale, de manière manuelle?
Maintenant, s'il vous faut absolument une couche polygone, vous pouvez aussi essayer une couche polygone virtuelle,
La couche virtuelle me permet-elle de créer une couche polygone à partir d'une couche points?
Cela fait beaucoup de remarques, mais mon souci est de faciliter la tâche des gens sur le terrain.
Hors ligne
#19 Wed 27 September 2023 10:19
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour,
S'il n'y a pas de solution sur le terrain, comment peut-on alors créer des polygones aux dimensions voulues?
Merci.
Hors ligne
#20 Wed 27 September 2023 19:41
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Donc si je comprend bien il n'y a pas de possibilité de créer un polygone (shape) aux dimensions voulues par le générateur d'expressions. Par contre on peut le faire uniquement par un plugin (geometry shape, par exemple)?
Hors ligne
#21 Thu 28 September 2023 12:04
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS: Creation automatique de polygones
Bonjour conejo,
Cela fait beaucoup de remarques, mais mon souci est de faciliter la tâche des gens sur le terrain.
C'est ce que j'avais compris. D'où ma suggestion résumée en une phrase: sur le terrain, ils se contentent de placer un point au centre du site. Quoi de plus facile que d'ajouter un point sur une carte (plutôt que de devoir dessiner, sur tablette ou téléphone, et sur le terrain, un quadrilatère dont les côtés doivent des dimensions bien précises...)?
Maintenant, est-ce que les gens sur le terrain seront perturbés par le fait que ce soit un point, et qu'ils auraient préféré visualiser un polygone? Si oui, vous pouvez utiliser l'astuce de la symbologie "générateur de géométrie" pour leur montrer comment ça va se présenter dans la réalité. Si ça ne les dérange pas outre mesure, eh bien, vous n'avez pas, je cite, "besoin de rendu carto".
Mais de toute manière, vous, vous avez besoin de stocker la vraie géométrie dans une couche quelque part. Ca, je l'ai compris et ceci peut se faire:
- soit ultérieurement, au bureau et depuis QGIS, avec l'algorithme "géométrie par expression" (avec la même expression que celle précédemment indiquée pour la symbologie)
- soit dans une couche virtuelle embarquée dans le projet. L'avantage est qu'elle se met à jour au fil des signalements de vos collaborateurs mais une couche virtuelle n'est pas non plus une "vraie couche en dur" (lire doc). Par contre, là vous avez accès à toute la puissance du SQL (version sqlite certes, mais bon), donc tout ce que vous imaginez devrait être possible, et notamment générer un polygone depuis les points. Pour peu que vous trouviez la bonne formule: je m'y suis essayé, je me suis cassé les dents sur comment passer plusieurs arguments à makepolygon ou makeline ou contruire un multipoint. Si quelqu'un sait, welcome. Pour info, le lien vers les fonctions sql spatiaLite.
Peut-être voir si la question bien reformulée et orientée requête SQL ne pourrait pas être posée sur le forum GeoBD?
En espérant que cette fois, c'est beaucoup plus clair que des options existent, mais la mise en œuvre dépend de ce que vous et vos collaborateurs avez envie/besoin de faire, et pouvez effectivement faire.
Hors ligne
#22 Fri 29 September 2023 11:38
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Mais de toute manière, vous, vous avez besoin de stocker la vraie géométrie dans une couche quelque part. Ca, je l'ai compris et ceci peut se faire:
- soit ultérieurement, au bureau et depuis QGIS, avec l'algorithme "géométrie par expression" (avec la même expression que celle précédemment indiquée pour la symbologie)
Cela semble compliqué du fait de l'inclinaison de la plateforme qui doit être parallèle à la ligne haute tension. Comment rendre cette inclinaison à partir d'un point?
Hors ligne
#23 Sat 07 October 2023 18:53
- conejo
- Participant assidu
- Lieu: Lunel
- Date d'inscription: 2 Dec 2005
- Messages: 1670
Re: QGIS: Creation automatique de polygones
Bonjour,
Au risque de me répéter. L'idéal selon moi serait de créer une couche polygone au sein de laquelle on créerait des entités à main levée le long d'une ligne électrique. Il va sans dire que la ligne électrique n'a pas bien sûr la même inclinaison le long de son parcours. Ensuite en validant ce polygone, une fenêtre doit apparaître me proposant via un menu déroulant des dimensions précises (10*10 m, 10*15m, 20*20m...). A la création de ce polygone, non seulement il aurait les dimensions voulues mais il respecterait son inclinaison qui serait grosso modo parallèle à la ligne.
Si cela est possible, cette manip serait transférée sous Qfield. Si cela n'est pas possible, le résultat sera une création de polygones à main levée par les techniciens terrain sous Qfield.
Merci.
Hors ligne