Pages: 1
- Sujet précédent - QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes) - Sujet suivant
#1 Wed 16 September 2020 17:52
- ENTECH
- Participant occasionnel
- Date d'inscription: 5 Oct 2018
- Messages: 15
QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Je démarre actuellement un projet de SIG pour la gestion d’un réseau d’eau potable. J’aimerais orienter le sens des vannes en fonction de la conduite. Le but serait de les orienter automatiquement dans le sens de la conduite.
Cette manipulation est-elle possible ?
En vous remerciant par avance. ENTECH
Dernière modification par ENTECH (Wed 16 September 2020 17:52)
Hors ligne
#2 Thu 17 September 2020 09:13
- Berangere
- Participant occasionnel
- Lieu: Gevrey-Chambertin
- Date d'inscription: 5 Sep 2005
- Messages: 36
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Il faudrait que tu nous précises quel logiciel tu utilises.
Dernière modification par Berangere (Thu 17 September 2020 09:13)
Hors ligne
#3 Mon 28 September 2020 10:51
- ENTECH
- Participant occasionnel
- Date d'inscription: 5 Oct 2018
- Messages: 15
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour
Qgis 3.4.14
Hors ligne
#4 Mon 28 September 2020 20:15
- arnaudp
- Participant occasionnel
- Date d'inscription: 20 Sep 2020
- Messages: 33
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour Entech,
Parlez-vous de l'orientation de symbole ponctuel ?
Dans ce cas vous pouvez le gérer par la symbologie en définissant une rotation en fonction à l'aide d'un angle issue d'un champ :
* Paramètre de la symbologie : https://i.imgur.com/7k5AS9K.png;
* Résultat : https://i.imgur.com/bJkikN7.png.
Est-ce que c'est dans cette direction que vous souhaitez aller ?
----
Sinon, comment sont définis vos données, vos conduites sont des shapes linéaires, et vos vannes des shapes ponctuels ?
Comment sont orientés vos conduites, en fonction des points les définissant vos conduites ? Les points s'incrémantant dans le sens d'écoulement des eaux ?
Vos conduites sont-elles des segments ? Des polylignes ?
Polyligne en haut, segment en bas : https://i.imgur.com/Ppw1vaS.png.
Arnaud
Hors ligne
#5 Tue 29 September 2020 11:20
- ENTECH
- Participant occasionnel
- Date d'inscription: 5 Oct 2018
- Messages: 15
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour Arnaud,
Nous souhaiterions orienter le symbole automatique pour qu'il soit perpendiculaire à la conduite, sans avoir besoin de créer un angle issu d'un champ. Le but serait de permettre une meilleure lecture des plans en visualisant les vannes et leurs conduites respectives.
Position de la vanne sur la conduite :
-----><-----
En vous remerciant pour la réponse.
ENTECH
Hors ligne
#6 Tue 29 September 2020 20:37
- shirosaki
- Participant actif
- Lieu: Lyon
- Date d'inscription: 30 Mar 2018
- Messages: 125
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
j'ai une solution mais c'est un peu une machine à gaz
je pars du principe que vous avez une couche "point" et une couche "polyligne"
où les points sont accrochées sur les lignes (sur les lignes et pas un de leurs sommets ou vectrices attention !!)
Dans ce cas,
Étape 1 : utiliser l'algorithme Qgis "Exploser les Lignes"
Étape 2 : Sur la couche nouvellement créée, créer un nouveau champs de type "Double" (nommé "angle par exemple" et le remplir avec la formule suivante "angle_at_vertex( $geometry,0.01)"
Étape 3 : Faire une jointure spatiale entre la couche point et la couche ligne explosée
Étape 4 : Paramétrer la rotation du symbole de la couche point avec le champs "Angle" nouvellement joint
Et voilà, chez moi ça donne ça.
https://image.noelshack.com/fichiers/20 … 182049.jpg
Paul QUESNOT
Hors ligne
#7 Wed 30 September 2020 10:24
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Une formule qui récupère l'angle de la ligne sous une entité point (à appliquer sur la propriété rotation du symbole des vannes)
Code:
with_variable( -- on va créer une variable qui représentera la ligne la plus proche du point, a priori celle sur laquelle il se trouve 'geom_ligne_support', -- le nom de la variable geom_from_wkt( geomnearest( 'ligne', '$geometry' ) ), -- la définition de la variable line_interpolate_angle( -- on va calculer l'angle que fait cette ligne (dans une rotation horaire) @geom_ligne_support, -- on parcourt l'entité ligne line_locate_point( @geom_ligne_support, $geometry ) -- jusqu'à un point donné, en fait le point de projection de notre entité sur la ligne ) )
PS: il faudra installer l'extension reffunctions pour pouvoir utiliser geomnearest. Ce ne sera plus nécessaire avec la 3.16 car ses fonctions sont maintenant intégrées
PS2: Remplacez ligne par le nom de votre couche de canalisations. Il faudra peut-être ajouter un +90 pour avoir le bon rendu, selon le type de symbole utilisé.
Hors ligne
#8 Tue 17 November 2020 17:23
- ENTECH
- Participant occasionnel
- Date d'inscription: 5 Oct 2018
- Messages: 15
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Merci, ça fonctionne !!!
Hors ligne
#9 Fri 15 January 2021 13:58
- Soloboh
- Juste Inscrit !
- Date d'inscription: 15 Jan 2021
- Messages: 1
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour
Je réactualise ce post, ayant le même besoin. Je cherche en fait à indiquer des Points Kilométriques tous les 100m à une polyligne.
Je suis passé par le plugin Qchainage et créé une couche de points avec les bons champs et attributs. Je cherche maintenant à orienter les symboles en fonction de la couche polylignes d'origine.
Je ne sais pas programmer en python, et ai strictement recopié le code de Santanna, que je remercie au passage,
Code:
with_variable( -- on va créer une variable qui représentera la ligne la plus proche du point, a priori celle sur laquelle il se trouve
'geom_ligne_support', -- le nom de la variable
geom_from_wkt( geomnearest( 'ligne', '$geometry' ) ), -- la définition de la variable
line_interpolate_angle( -- on va calculer l'angle que fait cette ligne (dans une rotation horaire)
@geom_ligne_support, -- on parcourt l'entité ligne
line_locate_point( @geom_ligne_support, $geometry ) -- jusqu'à un point donné, en fait le point de projection de notre entité sur la ligne
)
)
en remplaçant "ligne" par le nom de ma couche polyligne. Et j'obtiens un message d'erreur. Faut-il supprimer/modifier autre chose ?
Merci de votre aide !
Hors ligne
#10 Fri 15 January 2021 14:46
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3944
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Et j'obtiens un message d'erreur. Faut-il supprimer/modifier autre chose ?
Partager le message d'erreur aiderait à mieux comprendre le problème.
Hors ligne
#11 Mon 31 May 2021 15:42
- babarovitch
- Participant occasionnel
- Lieu: Amiens
- Date d'inscription: 28 Aug 2008
- Messages: 10
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
je remonte ce topic car mon souci concerne la rotation d'objets ponctuels (en l'occurrence des vannes sur des canalisations d'eau potable) dans le composeur d'impression de QGIS 3.16.6.
Ces dernières sont orientées selon un angle dans la table d'attributs.
Dans le composeur d'impression de QGIS 3.16.6,quand je rentre une valeur de rotation de la carte dans les propriétés principales,les entités ponctuelles restent figées. Les lignes et polygones tournent mais pas les entités ponctuelles.
Ca fonctionnait sous QGIS 3.4.5 (les entités ponctuelles suivaient la rotation de la carte).
Quelqu'un a t'il déjà rencontré ce problème?
Par avance merci pour votre aide,
Julien.
Hors ligne
#12 Mon 03 January 2022 11:32
- babarovitch
- Participant occasionnel
- Lieu: Amiens
- Date d'inscription: 28 Aug 2008
- Messages: 10
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Hello,
je re-remonte ce topic car je n'ai pas trouvé la réponse.
Voici en image le souci que je rencontre:
https://www.zupimages.net/viewer.php?id=22/01/hzrf.jpg
et en PJ.
La carte est orientée à 40° dans le composeur d'impression mais l'orientation des vannes ne suit pas:elle reste figée à sa valeur attributaire.
Quelqu'un a une idée?
Merci :-)
Dernière modification par babarovitch (Mon 03 January 2022 11:35)
Hors ligne
#13 Thu 02 June 2022 17:32
- triird
- Participant occasionnel
- Date d'inscription: 13 Jan 2022
- Messages: 18
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Je relance ce sujet,
En travaillant sur Qgis 3.22 la fonction "geomnearest" ne fonctionne pas. Je recherchais une solution dans le même genre (orientation Vanne (ou autre appareil) par rapport à une couche canalisation / branchement.
voici ce que j'ai pu trouver :
Source => https://gis.stackexchange.com/questions … er-in-qgis
• Pour une unique couche admettons "canalisation" il faut insérer ceci dans (clic droit couche/propriété/Symbologie/définir une valeur de rotation (à droite)/éditer
line_interpolate_angle(
geometry:=intersection(buffer(geometry:=$geometry, distance:=1, segments:=4),
overlay_nearest(layer:='canalisation', expression:=$geometry)[0]), distance:=1)
• Si vous avez des vannes sur une couche "canalsation" et une autre "branchement", perso j'ai fait comme ceci (à coller au même endroit)
coalesce(
line_interpolate_angle(
geometry:=intersection(buffer(geometry:=$geometry, distance:=1, segments:=4),
overlay_intersects(layer:='branchement', expression:=$geometry) [0]), distance:=1),
line_interpolate_angle(
geometry:=intersection(buffer(geometry:=$geometry, distance:=1, segments:=4),
overlay_nearest(layer:='canalisation', expression:=$geometry) [0]), distance:=1))
// dans ces deux cas il faut remplacer les 'canalisation" ou 'branchement' par le nom de votre couche
voilà ça reste surement à peaufiner mais ça fonctionne !
Hors ligne
#14 Tue 07 June 2022 08:41
- Robin.k
- Participant occasionnel
- Date d'inscription: 15 Mar 2022
- Messages: 45
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Sur QGIS 3.22, la fonction geomnearest a été intégré de "base" mais elle ne s'écrit plus pareil, il faut taper :
array_to_string(overlay_nearest('COUCHE',ATTRIBUT ))
Hors ligne
#15 Thu 20 April 2023 18:00
- Renaud_NM
- Participant actif
- Date d'inscription: 13 Sep 2019
- Messages: 84
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour Entech,
Pouvez-vous m'indiquer ou avez-vous trouvé la symbologie pour vos réseaux ?
En vous remerciant par avance.
Hors ligne
#16 Tue 02 May 2023 16:56
- triird
- Participant occasionnel
- Date d'inscription: 13 Jan 2022
- Messages: 18
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
De mon côté j'ai bidouillé directement depuis Qgis pour réaliser les différents symboles AEP (vanne, ventouse, purge, etc.).
Par exemple en créant deux triangles qui s'opposent pour les vannes.
Ya aussi moyen de passer par des fichiers .SVG qu'il faut créer depuis un logiciel comme Inkscape par exemple.
Théo
Hors ligne
#17 Wed 24 May 2023 11:41
- Berangere
- Participant occasionnel
- Lieu: Gevrey-Chambertin
- Date d'inscription: 5 Sep 2005
- Messages: 36
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonjour,
Pour information, l'ASTEE a mis à disposition des fichiers des symboles relatifs à l'eau potable et l'assainissement.
https://www.astee.org/publications/symb … hique-sig/
Hors ligne
#18 Mon 07 August 2023 02:11
- bricofoy
- Juste Inscrit !
- Date d'inscription: 28 Apr 2017
- Messages: 5
Re: QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes)
Bonsoir à tous
J'avais moi aussi besoin d'orienter des symboles (de simples traits) perpendiculairement à une ligne.
J'ai réussi à le faire en me basant sur les informations données dans ce sujet, de manière qui me semble plus simple.
Dans mon cas, j'ai deux couches shp, une avec une polyligne représentant un tracé de course d'orientation, et une seconde avec des points tous les km, crée avec qchainage à partir de la première couche.
Sur cette couche de points, il y a un champ "cngmètres" créé par qchainage qui contient la distance du point sur la ligne. J'ajoute un champ "angle" qui va contenir l'angle d'orientation du symbole, et que je calcule avec la formule suivante :
Code:
line_interpolate_angle( geometry( get_feature_by_id( 'couche_trace', 0)), "cngmètres" ) - 90.0
Ensuite il n'y a plus qu'a définir la rotation du symbole en fonction de la colonne "angle" et le tour est joué
https://i.imgur.com/G3HyWFQ.png
Dernière modification par bricofoy (Mon 07 August 2023 02:18)
Hors ligne
Pages: 1
- Sujet précédent - QGIS 3.14: Orienter les vannes(points) dans le sens des canas(lignes) - Sujet suivant