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 Wed 21 May 2008 16:45

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Créer des lignes entre les points de tables différentes

Bonjour à tous,

J'ai des coordonnées d'altitude max et min dans deux tables graphiques séparées. Je voudrai que mapinfo me trace un trait entre ces 2 points sachant que chacun des couples de points à un identifiant commun. Est-ce possible?

Merci d'avance

Hors ligne

 

#2 Wed 21 May 2008 17:01

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Bonjour
C'est possible couple de points par couple de points dans la fenêtre Map Basic, en sélectionnant la série d'instructions en en faisant 'enter' autant de fois qu'il y a de couples ...
Mais c'est plus du ressort d'un mbx (à créer), seul capable de faire des "boucles" !

Hors ligne

 

#3 Wed 21 May 2008 17:08

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Ralala on peut toujours compter sur Maurice pour savoir ce qui se fait sur mapinfo!!

En tout cas pour mon problème actuel c'est facheux parce que j'ai des centaines de points et je ne parle pas couramment du tout le map basic...

Si vous voyez une autre solution n'hesitez pas à m'en faire part!

Bonne soirée

Hors ligne

 

#4 Wed 21 May 2008 17:33

Gérard parcoli
Participant actif
Date d'inscription: 9 Jan 2007
Messages: 95

Re: Créer des lignes entre les points de tables différentes

C'est possible, si vous disposez d'un version de Mapinfo qui intégre spidergraph.

Hors ligne

 

#5 Wed 21 May 2008 17:47

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Carmen Argueyrolles a écrit:

...En tout cas pour mon problème actuel c'est facheux parce que j'ai des centaines de points...


C'est assez facile de garder le doigt sur la touche 'enter' jusqu'à la fin du job (5 secondes ?) tongue
Plus dur: écrire les bonnes instructions ... réponse demain big_smile

Hors ligne

 

#6 Wed 21 May 2008 21:36

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Risquant d'être accaparé demain, j'anticipe:
Je suppose que j'ai (en haut des couches, mais pas obligatoire) une table "lines", vide de tout objet, en édition
...et par ailleurs les table1 et table2 ouvertes
Dans la FMB, taper ce qui suit, sélectionner tout puis 'enter' (une seule fois pour ce qui est en normal)
Sélectionner ensuite ce qui est en gras et 'enter' (en fait, garder le doigt sur 'enter' jusqu'à épuisement du job)
Enfin enregistrer "lines"

dim xdeb as float
dim ydeb as float
dim xfin as float
dim yfin as float
dim m as smallint
dim n as smallint
m=1
n=1
fetch rec m from table1
xdeb=table1.x1
ydeb=table1.y1
fetch rec n from table2
xfin=table2.x2
yfin=table2.y2
insert into lines(obj) values(createline(xdeb,ydeb,xfin,yfin))
m=m+1
n=n+1


Ca devrait le faire...

ps: s'il faut recommencer, ne pas retaper les dim...

Hors ligne

 

#7 Thu 22 May 2008 23:46

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Me serais je décarcassé pour rien ??  (ou alors c'est à cause de la grève tongue)

Hors ligne

 

#8 Fri 23 May 2008 08:15

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Non non, ça m'est très utile!! Merci beaucoup!

Par contre le programme ne tourne pas sad (mais ça c'est parce que je ne suis pas douée).
En fait je ne comprends pas à quel endroit il fait le lien entre les identifiants commun entre mes 2 tables. Peut-être que le problème est là...

Hors ligne

 

#9 Fri 23 May 2008 08:58

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Ne tourne pas...c'est à dire?
Vous avez raison, j'ai oublié que pour que les lignes se créent entre les "bons" points il faut que ceux ci soient classés dans l'ordre des identifiants (et donc que les fetch rec n pointent bien sur les enregistrements de chaque table qui ont le même rang n ET le même identifiant)
Pour cela il faut que la manip ne porte pas sur les tables "orginales" mais sur des sélections tata1 et tata2 faites sur elles
select * from table1 order by ID1 into tata1 et select * from table2 order by ID2 into tata2
Vous me tenez au courant ?

Hors ligne

 

#10 Fri 23 May 2008 09:21

Gérard parcoli
Participant actif
Date d'inscription: 9 Jan 2007
Messages: 95

Re: Créer des lignes entre les points de tables différentes

Bonjour,
Et donc vous n'avez pas une version de mapinfo qui intégre spidergraph ?
si oui, il y a des chances qu'il vous fasse directement ce que vous voulez (avec une seule touche Entrée).

Hors ligne

 

#11 Fri 23 May 2008 09:36

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Oulala, dur ,dur!!

J'ai réalisé un essai à partir d'un extrait de mes tables avec uniquement 6 points (donc pour avoir 3 lignes) classés. Quand je lance le programme il ne s'arrête pas : par exemple j'ai arrêté à un moment (lâché la touche "enter") et il avait créé 500 objets non visibles dans la table line. Je n'est créé qu'un champ en caractère dans la table lines peut-être le problème vient-il de là?

Hors ligne

 

#12 Fri 23 May 2008 12:59

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Je n'aurait plus accès à internet à partir de cet après-midi. Si vous avez des propositions, je me ferai une joie de les mettre en oeuvre dés lundi!

Bon week-end!

Hors ligne

 

#13 Fri 23 May 2008 13:03

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Une seule: faites moi passer vos deux tables zippées ...pour occuper mon WE smile

Hors ligne

 

#14 Sat 24 May 2008 00:10

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Allez, une petite amélioration...
Les tables ont x enregistrements chacunes, avec un ID commun mais dans le désordre
On crée deux sélections toto1 et toto2 triées sur ce ID
Select * from table1 order by ID into toto1
Select * from table2 order by ID into toto2

dim xdeb as float
dim ydeb as float
dim xfin as float
dim yfin as float
dim m as smallint
dim n as smallint
m=1
n=1
fetch rec m from toto1
xdeb=toto1.x1
ydeb=toto1.y1
fetch rec n from toto2
xfin=toto2.x2
yfin=toto2.y2
insert into lines(obj) values(createline(xdeb,ydeb,xfin,yfin))
m=m+1
n=n+1
print chr$(12)
print m


Une première sélection de tout puis 'enter' ...la fenêtre message affiche 2 (une ligne est créée)
Ensuite on sélectionne ce qui est en gras, on garde le doigt appuyé sur 'enter' et on surveille la fenêtre message jusqu'à ce qu'elle affiche x+1
On enregistre lines qui comporte x lignes ...

ps: pour sélectionner les commandes, conseil: commencer par la fin !!

Hors ligne

 

#15 Mon 26 May 2008 09:03

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Ralala, je ne vois votre message qu'aujourd'hui, dsl d'avoir gâché votre we smile

J'ai essayé la nouvelle version du programme mais comme la première la création de points dans la table lines ne s'arrête pas et ces points ne s'affichent pas. Hum je vous ai préparé mon fichier comportant mes tables pour vous l'envoyer, mais comment en envoie-t-on des pièces jointes par GeoRezo?

Hors ligne

 

#16 Mon 26 May 2008 10:44

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Créer des lignes entre les points de tables différentes

Test effectué !
Diagnostic:
- la table de lignes à créer doit être dans la même projection que les deux tables de points
- le "programme" dernière version (avec les deux sélections pour commencer) marche bien à la condition de faire précéder le tout, dans la FMB,  par un Set CoordSys Table une_de_mes_tables_de_points (puis 'enter' sur la ligne). Ceci pour forcer l'utilisation de cette projection et non de celle par défaut (Lat/Long, qu'il serait d'ailleurs utile de changer dans les préférences !)

ps: dans la manip, il faut surveiller la fenêtre message et stopper quand le bon nombre (x+1) s'affiche...

Hors ligne

 

#17 Mon 26 May 2008 11:12

Nemrac33
Participant occasionnel
Date d'inscription: 6 Oct 2006
Messages: 27

Re: Créer des lignes entre les points de tables différentes

Ouah ça y est ça marche!

C'est magnifique, ma mapinphobie s'est envolée!

Merci beaucoup!

Hors ligne

 

Pied de page des forums

Powered by FluxBB