#1 Wed 28 March 2001 22:31
- Roddier Sebastien
- Invité
fromnode tonode
Bonjour a tous
J'essai de recuperer pour une ligne les coordonnees x et y des noeuds
de depart et de fin.
j'utilise les fonctions :
objectgeography(table.obj, obj_geo_linebegx)
objectgeography(table.obj, obj_geo_linebegy)
objectgeography(table.obj, obj_geo_lineendx)
objectgeography(table.obj, obj_geo_lineendy)
le probleme c'est que mapinfo ne retourne pas forcement les coordonnees
des noeuds de depart et de fin mais les coordonnees extremes
avez vous une idee car c'est genant de proposer un fonction qui ne
marche pas
A bientot
#2 Wed 28 March 2001 22:33
- Jacques Paris
- Invité
Re: fromnode tonode
Les coordonnees des nœuds d'une polyligne s'obtiennent par OBJECTNODEX /
OBJECTNODEY. Celles du point de depart sont faciles a retirer :
OBJECTNODEX(objet,1,1) ce qui signifie de l'objet identifie par objet
prendre de la premiere section le premier node.
C'est pour la fin que cela se corse. D'abord qu'entend-t-on par fin quand il
y a plusieurs sections? Le dernier nœud de la derniere section? Si oui, il
faut aller retirer le nombre de sections de l'objet [nsect= OBJECTINFO
(objet, OBJ_INFO_NPOLYGONS) ] puis le nombre de nœuds de cette section
[nnoeu= OBJECTINFO (objet, 21+nsect)] [21 est le code numerique de
OBJ_INFO_NPOLYGONS]. Alors la longitude du dernier nœud est
OBJECTNODEX(objet,nsect,nnoeu)
Ceci peut etre simplifie si l'on est sur de travailler avec des polylignes
d'une seule section : nnoeu= OBJECTINFO (objet,22) , 22 representant la
premiere et seule section, ou nnoeu=OBJECTINFO (objet, OBJ_INFO_NPOINTS) qui
donne le nombre total de nœuds dans la polyligne. On a alors OBJECTNODEX
(objet,1,nnoeu).
Jacques