Pages: 1
- Sujet précédent - Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre - Sujet suivant
#1 Thu 02 October 2014 22:20
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Bonjour
Le titre est simplet mais je m'explique :
J'ai deux couches : Conduite_sanitaire (lignes) et regard_sanitaire (points).
Ma couche conduite_sanitaire est numérisée par rapport au sens de l'écoulement. Dans la base de données, j'ai deux colonnes, regard_amont et regard_aval.
Dans ma base de données de ma couche regard_sanitaire, j'ai une colonne Nom, et d'autres colonnes.
J'ai besoin d'aller mettre le nom du regard qui est en amont de la conduite, dans la colonne regard_amont de ma couche Conduite_sanitaire et de même pour le regard qui est en aval, dans la colonne regard_aval.
En théorie, les conduites ont été tracées en reliant les regards entre eux. Donc, la coordonnée du début de la ligne est égale à la coordonnée du regard à cet endroit.
Je cherche donc le moyen d'y arriver et je tourne en rond en ce qui attrait à la formulation soit de la mise à jour de colonne ou une petite syntaxe dans la FMB!!!
Des idées?
Voir le fichier PDF pour visualiser la problématique.
Merci
Daniel
De retour à la géomatique
Hors ligne
#2 Fri 03 October 2014 09:30
- Benoit91
- Participant assidu
- Date d'inscription: 2 Oct 2008
- Messages: 263
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Bonjour Daniel
Je déjà butté sur cette problématique (récupérer le nom du regard amont et aval sur une couche canalisation) mais pas via une syntaxe FMB.
Pour ma part je suis parti sur la procédure suivante:
1) Extraire le x;y du noeud de départ et de fin d'une canalisation
Pour le X et Y de début => objectnodeX(obj,1,1) / objectnodeY(obj,1,1)
Pour le X et Y de fin => objectnodeX(obj,1,objectinfo(obj,20)) / objectnodeX(obj,1,objectinfo(obj,20))
2) de cette extraction j'ai créée 2 couches de points pts_debut et pts_fin (export csv puis réimport avec création de point via coordonnées x et y) en conservant les identifiants des canalisations.
3) Puis en 2 temps, création d'un buffer de 50 cm sur les pts_debut afin de faire une intersection avec ma couche regard pour récuperer le nom du regard amont.
4) Mise à jour de la table canalisation avec cette table d'intersection (qui contient normalement l'id de la cana et le nom du regard amont)
Pour le regard aval reproduire les étapes 3 et 4.
Dans mon cas je devais aussi le faire sur d'autres couches comme celle des avaloirs, station de relevages ou autres ouvrages assainissement, ce qui multiplie les manip et on peut facilement s'y perdre.
Je pense que l'on peut grandement simplifier la procédure via une requête SQL qui générait directement le buffer voir le lien suivant pour des pistes http://web.pb.com/mapinfopro-jul-2014/Q … zNTVmOzsS1
En espérant que cela t'aide dans ta démarche.
cordialement
Hors ligne
#3 Fri 03 October 2014 15:25
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Bonjour
Merci Benoit. Je vais faire une tentative. Il est vrai que l'on peut se perdre rapidement. Il faut donner des noms révélateur à nos couches, même si elles sont que temporaire...
Et oui, là je demande pour du sanitaire mais j'ai deux autres réseaux à faire!
Je vous reviens sur le résultat.
Daniel
De retour à la géomatique
Hors ligne
#4 Fri 03 October 2014 19:59
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Salut,
As tu beaucoup de conduites?
La procédure décrite ci dessus peut être automatiser avec scriptgen couplée avec la FMB.
Maintenant la toolbox de routeware fait l'extraction des points début et fin.
Voir add Nodes dans --> http://www.routeware.dk/toolbox.php
Voir aussi ceci --> http://www.forumsig.org/showthread.php/ … erposition
A+
Joël
Dernière modification par Spacejo (Fri 03 October 2014 19:59)
Hors ligne
#5 Fri 03 October 2014 20:06
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Salut
Merci Joël. Je vais vérifier le tout. Si je peux m'éviter plusieurs manipulations, j'en serais heureux!
Daniel
Édit : Joël : ton lien je l'avais déjà vu... Et je le cherchais... Mais dans ta requête, tu mets le nom des lignes dans la couches des points. J'imagine que si j'inverse les table dans la ligne de commande, le résultat devrait être bon aussi!!!
Dernière modification par Daniel (Fri 03 October 2014 20:20)
De retour à la géomatique
Hors ligne
#6 Wed 08 October 2014 21:12
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Salut
J'ai fait le test en essayant l'exemple à spacejo mais j'arrive avec un drôle de résultat.
Si ça vous tente, je laisse un exemple avec 3 regards et 2 conduites. En affichant le sens de numérisation, on peut savoir qui est le regard amont et qui est aval. Dans l'exemple, le 001 est amont de la première conduite et le 002 est aval. Pour la deuxième conduite, le 002 est amont et le 003 est aval.
J'ai fait une vérification et les coordonnées X1Y1 correspondent, à 1 cm près, à la coordonnées du regard. Même chose pour le X2Y2... D'où l'importance d'utiliser le buffer sur les regards.
Mais je n'arrive pas à mettre les bons noms dans les bonnes cases!!!
S'il y a une idée brillante, je suis preneur
Merci
Daniel
De retour à la géomatique
Hors ligne
#7 Tue 14 October 2014 15:03
- Benoit91
- Participant assidu
- Date d'inscription: 2 Oct 2008
- Messages: 263
Re: Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre
Bonjour Daniel
Pourrais-tu être plus explicite quant à ton "drôle de résultat" ?
Sinon est-ce que depuis tu as trouvé une méthode pour "mettre les bons noms dans les bonnes cases" ? car cela me semble compliqué avec la méthode de Spacejo de déterminer le regard amont de celui de l'aval.
Cordialement.
Hors ligne
Pages: 1
- Sujet précédent - Mapinfo 12.5 - Transférer de l'information d'une couche vers une autre - Sujet suivant