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

 La 5ème édition des GeoDataDays aura lieu les 14 et 15 septembre 2022 au Futuroscope de Poitiers. 

Le détail du programme et des intervenants est disponible sur le site de l'évènement.

#1 Wed 01 August 2018 14:38

Thibaud77
Membre
Date d'inscription: 1 Aug 2018
Messages: 1

Création de liaisons entre points stockés dans PostGIS

Bonjour,

Je cherche à réaliser une carte avec des lignes tracées entre différents points avec FME (comme le permet le plug-in MMQGIS dans QGIS). Ces points se situent dans deux couches différentes et ont un champ commun.

On a donc une première couche de points qui a différents attributs et un champ "id1" qui peut être vide ou bien contenir un numéro; et une deuxième couches de points avec des attributs et un champ "id2" qui contient des nombres qui sont aussi présents dans le champ "id1".
Le champ "id1" peut être vide, auquel cas il n'y a pas besoin de tracer de liaisons, et de toutes façons le champ "id2" n'est jamais vide.
Une valeur de "id1" peut être présente plusieurs fois dans "id2", auquel cas je voudrais que le point de la première couche soit relié à l'ensemble de ces points dans la deuxième couche.
Par contre, pour un "id2" donné, il n'y a qu'un seul "id1" correspondant.

Je souhaiterais réaliser un projet FME qui parcourt chaque point de la première couche de points et qui pour chaque valeur de "id1" cherche la ou les points de la deuxième couche qui ont la même valeur dans le champ "id2" et relie ces points entre eux. La couche cartographique résultante contiendrait les attributs des deux couches source et toutes les informations seraient conservées.

J'ai utilisé le transformer "LineBuilder" et le projet me renvoie une liaison. J'ai donc créé un workspacerunner qui relance le premier projet plusieurs fois et qui l'incrémente afin de tracer l'ensemble des liaisons.

Cela fonctionne, à partir de mes deux fichiers Excel, j'obtiens autant de fichiers shapefile qu'il y a de liaisons (c'est à dire un peu plus de 22 000).

J'aimerais pouvoir partir non pas de mes deux fichiers Excel, mais de deux tables dans une base de données dans PostgreSQL et obtenir un unique fichier Shapefile, ou encore mieux, que les lignes résultantes soient stockées dans une table de ma base de données.

Cependant, quand je relance le processus, ma table résultante est composée de 22 000 fois le même enregistrement, incomplet puisque seules les informations concernant la première table ont été insérées.
J'ai vérifié, et ce point de la première table a bien des correspondances avec des points de la deuxième table.

Je joins une image du projet FME : [img]https://image.noelshack.com/minis/2018/31/3/1533115791-01-08-2018-11-19-55.png[/img]

Je bloque complètement, est-ce que quelqu'un aurait une idée s.v.p ?

Dernière modification par Thibaud77 (Wed 01 August 2018 14:44)

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |