#1 Tue 05 February 2002 20:16
- Fellmann, Michel
- Invité
centroidX(obj) et centroidY(obj)
Apres avoir obtenu un nuage de points suite a une geocodification, je
voudrais recuperer les coordonnees X et Y de ces points.
J'ai donc modifier la structure de ma table, ajoute 2 colonnes X et Y
(virgule fixe 10,2) et lancer la cmde de mise a jour de colonnes:
update ma_table set X = CentroidX(obj)
update ma_table set Y = CentroidY(obj)
Dans les colonnes je n'arrive pas a avoir les coordonnees de mes points
(Lambert II Centre Paris)
En fait j'ai un resultat, mais qui ne veut rien dire...
Dans l'attente d'une aide quelconque
#2 Tue 05 February 2002 20:19
- SébastienRoddier
- Invité
Re: centroidX(obj) et centroidY(obj)
Bonjour a tous
Lorsque vous voulez mettre a jour des colonnes de coordonnees vellez a verifier le systeme de projection en cours.
Le mieux est d'initialiser votre cession de travail MI en tapant dans la fenetre Mapbasic les commandes suivantes :
set coordsys table [Nom table]
Ou [Nom table] est le nom de votre table geographique qui bien sur doit etre ouverte
ensuite relancez le calcul des coordonnees
a bientot
#3 Tue 05 February 2002 20:19
- Simalis (pierre Menu)
- Invité
Re: centroidX(obj) et centroidY(obj)
De maniere generale, je vous conseille d'utiliser le type flottant plutot que virgule fixe.
Le nombre de decimales a afficher peut ensuite etre modifie via la fonction
Round(val,0.01) mais au moins les calculs conservent leur precision maximum.
Concernant votre probleme :
Parfois Mapinfo calcule en lat/long alors que tout indique que les systemes
de projection sont definis, ce qui donne des resultats de type 40.45, 6.0223
alors que l'on s'&attend a du lambert 600000 2800000
La solution est d'aller dans Carte/Option/Projection de choisir une projection quelconque (ex: Lambert III)
Puis de valider toutes les boites de dialogue
De retourner ensuite dans l'option et de retablir le sys proj correct (ex: Lambert II Carto)
Ce mecanisme force Mapinfo a prendre en compte en interne le systeme de projection
Cordialement
#4 Tue 23 March 2004 14:10
- F Girardier
- Invité
Re: centroidX(obj) et centroidY(obj)
bonjour.
Je me trouve dans la meme situation que vous avec des chiffres etranges apres avoir lance un Mettre a Jour Colonne > CentroidX et Y.
Avez vous eu une reponse interessante a votre question et pourriez vous me la faire partager s'il vous plait.
D'avance, merci et au plaisir.
#5 Wed 24 March 2004 16:06
- Brunjulien13
- Invité
Re: centroidX(obj) et centroidY(obj)
Bonjour,
essayez avant de faire votre mise a jour de regler l'unite de la fenetre carte. En effet, MI calcule par defaut en degres.
Il suffit dans la fenetre MB d'ecrire:
Set Coordsys Window FrontWindow()
Ainsi vos coordonnees seront dans l'unite de votre carte.