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é ?

#1 Tue 20 June 2006 18:43

Romaneix
Juste Inscrit !
Date d'inscription: 20 Jun 2006
Messages: 4

Utilisation de la fonction CartesianDistance ou Distance

Bonjour,

J'ai une table de tronçons d'un même cours d'eau mais enregistrés de façon aléatoire. Je souhaite pouvoir les retrier dans un ordre amont-aval lors de la récupération de la table sous Excel par exemple.
J'ai pensé aux fonctions CartésianDistance (ou Distance()) pour créer une variable qui me servirait alors d'index; cette varaibale étant la distance d'un tronçon par rapport à un point fixe judicieusement choisi.
J'ai donc une table (en lambert I Carto - Paris) dans laquelle j'ai entre autre 3 colonnes
  - Longitude renseigné par CENTROIDX en mètres sous Lambert I
  - Latitude renseignée par CENTROIDY
  - Distance que je fais calculer par "Mettre à jour colonne" à l'aide de la fonction CARTESIANDISTANCE selon l'expression suivante:

   CARTESIANDISTANCE(332382.43,1195652.35,Longitude, Latitude"m")

où les 2 premeirs termes sont les coordonnées X et Y (Lambert I) du point fixe que j'ai choisi.

Ca ne marche pas. La valeur renvoyée est -1 pour tous les objets.

Quant j'utilise la fonction DISTANCE(....) la valeur retournée devient 0 .


Où est l'erreur ?

Merci

Hors ligne

 

#2 Wed 21 June 2006 09:56

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

Re: Utilisation de la fonction CartesianDistance ou Distance

Piste:
CARTESIANDISTANCE(332382.43, 1195652.35, CentroidX(cdo.obj), CentroidY(cdo.obj), "m")
Le tout après un Set coordsys table cdo

Hors ligne

 

#3 Wed 21 June 2006 10:22

Romaneix
Juste Inscrit !
Date d'inscription: 20 Jun 2006
Messages: 4

Re: Utilisation de la fonction CartesianDistance ou Distance

Merci
Je vais essayer

Hors ligne

 

#4 Wed 21 June 2006 14:37

AxEor
Participant occasionnel
Date d'inscription: 5 Sep 2005
Messages: 18

Re: Utilisation de la fonction CartesianDistance ou Distance

vous essayez d'affecter une distance cartésienne à un calcul de données lat
long, donc à un système de projection sphérique
voila votre erreur.

faites un calcul avec "sphérical distance" cela fonctionnera.
il faut toujours faire attention au systeme de projection que l'on utilise
et donc aux fonctions associées par la suite.
un SIG n'a de valeur qu'avec un systeme de projection qu'il soit cartésien
ou sphérique

bonne continuation
Axeor

Hors ligne

 

#5 Thu 22 June 2006 10:35

Romaneix
Juste Inscrit !
Date d'inscription: 20 Jun 2006
Messages: 4

Re: Utilisation de la fonction CartesianDistance ou Distance

Merci,
Effectivement ça marche, à condition d'utiliser pour les coordonnées des objets ciblés les valeurs fournies par les fonctions CENTROIDX et CENTROIDY.

Merci encore pour le dépannage

Hors ligne

 

#6 Thu 22 June 2006 10:40

Romaneix
Juste Inscrit !
Date d'inscription: 20 Jun 2006
Messages: 4

Re: Utilisation de la fonction CartesianDistance ou Distance

Rebonjour,
Question subsidiaire:
Ne possédant pas VerticalMapper, j'ai fais toutes ces manip pour établir le profil en long d'un cours d'eau, ou des coupes topographique à partir d'une grille MNT. Je ne pense pas qu'il existe d'outils MapInfo pour effectuer cette tache en automatique.
Est-ce exact, sinon où le trouver, ou existe-t-il une méthode plus facile?

Hors ligne

 

#7 Thu 22 June 2006 12:00

haubourg
Participant assidu
Lieu: Grenoble
Date d'inscription: 7 Sep 2005
Messages: 257
Site web

Re: Utilisation de la fonction CartesianDistance ou Distance

Bonjour,
il existe effectivement un mbx qui fait ça mais qui semble introuvable sur le net:
Gridanalyser.mbx

passez moi un mail si vous le voulez,
Très cordialement,
Régis

Hors ligne

 

Pied de page des forums

Powered by FluxBB