Aller au contenu

distance mini entre objets


Quena

Messages recommandés

Bonjour,

Je souhaite (avec Autodesk Map 2004) connaître la distance minimale entre des points définis dans une base de données, et une polyligne. Pour chaque point, je dois remplir un champ de la base de données correspondant à la distance minimale entre ce point et le point de la polyligne le plus proche.

Quelqu'un a t'il une idée ?

 

J'ai vu faire ça sur Arcinfo/station il y a déjà une dizaine d'années, mais ce n'est pas le même prix de logiciel ni la même puissance en topologie.

Lien vers le commentaire
Partager sur d’autres sites

Oui, c'est bien de tout ça qu'il s'agit : j'ai une base de données ACCESS contenant des champs X et Y donnant les coordonnées de points (il y en a des milliers). Ces points correspondent à des équipements situés dans une cloture, définie sous la forme d'une polyligne fermée (pas d'arcs).

Pour chacun des points, j'aimerais trouver la distance la plus courte vers cette cloture, et entrer cette valeur dans un champ nommé Xraff de la base de données contenant les points.

 

Je n'ai pas pensé à la topologie. Permet-elle de trouver la distance mini entre un point et un polygone ? Pour plus de facilité, je pourrais modifier la polyligne de façon à ce qu'elle n'ait que des tronçons de UN mètre. Le calcul se ferait alors entre chaque point de la BdD et chaque sommet de la polyligne...

Lien vers le commentaire
Partager sur d’autres sites

Salut Quena

Je n’ai encore jamais du résoudre ce problème et j’ignore encore si Map peut y contribuer facilement. Toutefois, ce cas donne à réfléchir et me permet de mesurer combien sont loin les principes élémentaires de trigono et d’analytique appris vingt ans plus tôt…

Si je comprend bien, ton problème pourrait s'exprimer comme ceci.

Pour l'un de tes points à l'intérieur de la clôture, quelle la distance la plus courte parmi les distances entre ce point et ceux situés à la perpendiculaire de chaque côté séparant deux sommets consécutifs de la clôture ?

Les données directement exportables dans Map et pouvant être traitées ultérieurement sont les coordonnées des sommets et celles du point.

Si on réduit le problème, on peut imaginer un triangle composé de ce point et de deux sommets consécutifs. Il s’agit d’exprimer la valeur de la hauteur H de ce triangle séparant ce point de celui situé à la perpendiculaire du côté reliant les deux autres.

Soit (xp,yp) les coordonnées du point ; (x1,y1) et (x2,y2) celles des deux sommets opposés.

H est la distance que tu recherches.

La longueur du morceau de clôture séparant les deux sommet n’est autre que l’hypothénuse du triangle rectangle dont les deux autres côtés ont, si je ne m’abuse, les longueurs (x2-x1) et (y2-y1). Tu trouveras pareillement les longueurs séparant le point p des deux sommets de la clôture.

Il reste, et là je cale pour le moment, à formuler la longueur de la hauteur H de ce triangle, ou, comment déterminer les valeurs des trois angles d’un triangle dont on connaît les trois côtés ! Et dire que j’ai fait math forte ! Honte sur moi !!! :(

Je crois sincèrement que les éléments de réponses se trouvent ici, il reste à orchestrer tout ça !

Bon, sur ce, j’ai du boulot ! Mais j’y resongerai ce w-e.

Bonne chance.

;)

 

PS: intuitivement je travaillerais plutôt en spatial mais c'est là un domaine que je n'ai pas encore approché, faute de temps.

 

[Edité le 11/2/2005 par jms]

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Oui, j'ai pensé également à décomposer la polyligne (la clûote) en segments de 1 ou 2 mètres, puis à calculer pour chaque point la distance la plus courte entre le point et chaque sommet, et à sortir la plus petite. Ca devrait faire un petit programme pas trop compliqué en VBA pour Autocad ou pour Excel, mais je n'ai pas encore eu le temps de me mettre au VBA... Et je trouve les livres de VBA pour Autocad assez chers.

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité