Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 11 August 2011 11:35

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Trier des lignes

Bonjour,

j'ai de la donnée sous forme de polylignes connectés et toutes saisies dans le même sens.
Je souhaiterais pouvoir trier ces objets par rapport à leur sens de saisie pour leur affecter un n° d'ordre avec un counter.

Je n'arrive pas à trouver de solution pour résoudre ce problème, le transformer sorter permet bien de trier la donnée mais par rapport à un attribut et non au sens de saisie.

J'ai essayé avec un NetworkTopologyCalculator qui me ressort bien mes lignes connectés par contre à il ne permet à priori pas de connaitre l'ordre de mes lignes par rapport à leur sens de saisie.

Quelqu'un a-t-il deja été confronté à ce genre de problème ? ou aurait une piste pour arriver à ce que je souhaite ?

Merci d'avance


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#2 Thu 11 August 2011 13:29

MaelReboux
Participant actif
Lieu: Roazhon / Rennnes
Date d'inscription: 24 Aug 2010
Messages: 72

Re: Trier des lignes

Bonjour,

Je suis très intéressé par la démarche car je suis confronté à la même problématique.
Sauf que je pense que toutes mes lignes ne sont pas bien connectées, je crois.

Ne doit-on pas faire un NetworkTopolyBuider avantle Calculator ?


Service SIG Rennes Métropole
AITF : Coordinateur GT voies-adresse
Et un peu OSM Bzh

Hors ligne

 

#3 Thu 11 August 2011 13:46

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1025
Site web

Re: Trier des lignes

Peut-être que le transformer "orientationextractor" peut vous aider ?

Il sort apparemment un attribut contenant "right_hand" ou "left_hand"

Dernière modification par heretik25 (Thu 11 August 2011 13:47)


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#4 Thu 11 August 2011 14:09

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Trier des lignes

Dans votre cas, le TopolyBuider peut être intéressant à 2 conditions:
- les lignes si elle ne sont pas jointive doivent s'entrecouper
- avec ce transformer, tous les croisement de lignes vont former un noeud, ce qui n'est pas toujours le cas

dans votre cas, un intersector avec un linejoiner pourrait être plus intéressant.

Par contre pour ajouter un n° d'ordre aux lignes, je n'ai toujours pas trouvé d'autres pistes.


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#5 Thu 11 August 2011 17:12

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Trier des lignes

Dans le cas ou le cheminement est le plus court (c'est mon cas car j'ai qu'un seul cheminement possible), il est possible d'utiliser le transformer ShortestPathFinder.

Il ressort par le port PATH les lignes formant le chemin le plus court dans l'ordre de parcours du graphe. J'ai rajouter un counter après pour générer le n° d'ordre.


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#6 Tue 23 August 2011 09:26

MaelReboux
Participant actif
Lieu: Roazhon / Rennnes
Date d'inscription: 24 Aug 2010
Messages: 72

Re: Trier des lignes

Merci pour votre aide : j'ai à peu près réussi ce que je voulais faire.

1. sélection de 1 seule "ligne" de travail, pour ne pas traiter toute la couche
2. Intersector pour nettoyer les géométrie (marche vraiment bien ce truc !!!)
3. LineJoiner pour assembler tous les bouts
4. test pour ne garder que les lignes supérieures à 10 m (pour virer les arcs pendants)
5. re LineJoiner

Déjà là c'est bien mais je souhaitais tenter d'orienter la ligne par rapport à d'autres paramètres. Il n'y a pas vraiment le choix : il faut bien utiliser ShortestPathFinder mais ce Transformer demande un réseau mais surtout un point de départ et un point d'arrivée. J'ai donc un pré-traitement qui lui fournir ces 2 points dans un sens ou dans l'autre : D -> A = aller ou A -> D = retour.
Par contre, je récupère le PATH et le UNSUED car souvent je n'ai que une ligne entre le point de départ et d'arrivée.

6. NetworkCalculator
7. ShortestPathFinder
8. FeatureMerger sur la ligne de départ pour récupérer les infos d'origine qui ont été perdus entretemps.


Service SIG Rennes Métropole
AITF : Coordinateur GT voies-adresse
Et un peu OSM Bzh

Hors ligne

 

#7 Fri 02 September 2011 17:12

ajrc
Juste Inscrit !
Lieu: Montréal
Date d'inscription: 19 Jun 2009
Messages: 2

Re: Trier des lignes

Bonjour Xavier,

J'ai construis un WB avec un problème similaire au tien. À savoir, je désirais ordonner les segments de rue d'une même voie (même toponyme). En le modifiant un peu pour tes besoins (que j'espère avoir compris) ça donne le WB ci-joint. Tu noteras qu'une fois le principe acquis il est simple, je crois, de l'adapter exactement à tes besoins.

P.S le WB présuppose que la connectivité des données soit impécable.

Bye

André


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#8 Mon 05 September 2011 11:18

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Trier des lignes

Merci, je rentre tout juste de vacances, je vais essayé de regarder ca dans la semaine


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

Pied de page des forums

Powered by FluxBB