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 April 2024 15:55

AME - SIG
Participant occasionnel
Lieu: Montargis
Date d'inscription: 16 Sep 2008
Messages: 12
Site web

FME / Donner un numéro d'ordre à un réseau topologique linéraire

Bonjour à tous,

Je travaille sur une couche de réseau d'assainissement avec uniquement les collecteurs de refoulement.

Les polylignes sont topologiques et l'identifiant de chaque tronçon est constitué par la concaténation des identifiants uniques des sommets de la polyligne.
Exemple : le tronçon A1_B1 (composé donc du sommet "amont" A1 et du sommet "aval" B1" touche le tronçon B1_C1 qui touche C1_D1 et ainsi de suite.

Grâce au transformer NetworkTopologyCalculator, j'ai pu récupérer un "network_id" pour chacun de mes "sous-réseau de collecteur de refoulement".

J'aimerais réussir à "ordonner" les tronçons d'un même sous réseau (= qui ont le même network_id) de 1 à n. Je bloque sur cette dernière partie en cherchant à utiliser l'identifiant du tronçon comme support.

Ce n'est peut-être pas la bonne approche ... auriez-vous une idée pour m'aider ?

Merci d'avance !

Hors ligne

 

#2 Wed 12 June 2024 23:37

Benoit D
Participant assidu
Date d'inscription: 17 Jul 2018
Messages: 151

Re: FME / Donner un numéro d'ordre à un réseau topologique linéraire

Il faut plutôt utiliser "TopologyBuilder" que "NetworkTopologyCalculator" dans ce cas.
Vous pourrez alors parcourir vos segments "edge" dans l'ordre mais il faut déterminer votre point de départ.

La seule solution à laquelle j'arrive est l'utilisation de "TopologyBuilder" suivi d'un "ShorterPathFinder" (en utilisant Attribute acumulation / Generate list pour récupérer les noms des tronçons) mais qui nécessite de connaître le point de départ et le point d'arrivée de votre ligne. Est-ce le cas ? Si oui c'est gagné, si non il faut trouver autre chose.

Peut-être qu'un "NetworkFlowOrientor" pourrait simplifier les choses mais il faut au moins le point le plus bas. ou un "NetworkCostCalculator" avec le point le plus haut.

Hors ligne

 

Pied de page des forums

Powered by FluxBB