Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pouvoir déplacer le noeud de jonction d'une ligne #4294

Open
bruhnild opened this issue Sep 6, 2024 · 2 comments
Open

Pouvoir déplacer le noeud de jonction d'une ligne #4294

bruhnild opened this issue Sep 6, 2024 · 2 comments

Comments

@bruhnild
Copy link
Contributor

bruhnild commented Sep 6, 2024

Contexte :
Actuellement, lorsque l'utilisateur souhaite modifier un point de jonction entre plusieurs tronçons dans Geotrek-admin, il doit déplacer le nœud situé à l'extrémité d'un des tronçons. Cela provoque la coupure des tronçons voisins concernés, entraînant la création de micro-tronçons indésirables. Ces micro-tronçons peuvent poser des problèmes, notamment en restant liés aux itinéraires malgré leur inutilité pour la continuité de l'itinéraire.

Problème :
Les manipulations nécessaires pour corriger ces micro-tronçons sont fastidieuses et entraînent des risques d'erreurs. Actuellement, les utilisateurs doivent :

  1. Modifier la position de l’extrémité d’un tronçon, ce qui génère des coupures dans les tronçons voisins.
  2. Fusionner les tronçons créés, ce qui entraîne une gestion complexe des attributs, notamment pour les attributs à choix multiples (ex. usages).
  3. Supprimer les micro-tronçons résultants, ce qui est à éviter, car ces tronçons peuvent rester liés aux itinéraires existants.

Objectif :
Mettre en place une fonctionnalité permettant de modifier uniquement le point de jonction d'un ensemble de tronçons dans Geotrek-admin sans générer de micro-tronçons, tout en conservant l'intégrité des tronçons existants et de leurs attributs.

Proposition de spécifications fonctionnelles :

  1. Modification directe du point de jonction : Permettre aux utilisateurs de déplacer un nœud situé à l'intersection de plusieurs tronçons sans impacter la géométrie des tronçons connectés.

  2. Gestion des attributs : Lors de la modification du point de jonction, les attributs des tronçons ne doivent pas être affectés, et aucun attribut ne doit être fusionné ou perdu.

  3. Préservation des itinéraires : Les tronçons résultants ne doivent pas entraîner de rupture dans les itinéraires existants. Les itinéraires doivent rester cohérents et les tronçons inutiles ne doivent pas rester liés aux itinéraires.

  4. Interface utilisateur :
    Fournir un outil spécifique pour déplacer le point de jonction sans impacter les tronçons connectés.

@camillemonchicourt
Copy link
Member

camillemonchicourt commented Sep 6, 2024

Oui et si on déplace un noeud de tronçons directement dans QGIS, cela le déplace bien et ne créé pas de micro-tronçons, mais cela entraine des soucis sur les topologies liés à ce tronçons, certainement car l'enregistrement dans la BDD se fait tronçon par tronçon et donc cela créé un trou temporaire entre les tronçons et donc dépublie ou casse les topologies passant par là.

@camillemonchicourt
Copy link
Member

Quand on modifie un nœud dans Geotrek-admin, on doit le faire tronçon par tronçon, donc 3 actions, 3 enregistrements, et donc on créé aussi un trou temporaire dans la continuité des tronçons, ce qui va logiquement dépublier les éventuelles evenements qui passent par ce nœud. Ce n'est pas un bug, mais un effet de bord lié au fait qu'on bouge un nœud, tronçon par tronçon et donc on créé un trou temporaire dans les topologies.

On pourrait imaginer que si on déplace un noeud de tronçons directement dans QGIS, cela ne fait qu'une seule transaction de modification donc ne devrait pas créer de trou temporaire dans les topologies passant par ce noeud.

A confirmer, mais dans tous les cas, on a d'autres effets de bord sur les tronçons qui sont certainement liées aux triggers de Geotrek.

J'ai 3 tronçons :
image

Je créé un itinéraire qui passe par le noeud entre ces 3 tronçons :
image

Je déplace les 3 tronçons pour déplacer leur noeud un peu au nord :
image

Après sauvegarde de mes modifications, il a gardé un résidu de tronçon précédent :
image

L'itinéraire qui passait par là est en vrac aussi :
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants