Quena Posté(e) le 4 février 2005 Posté(e) le 4 février 2005 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.
didier Posté(e) le 4 février 2005 Posté(e) le 4 février 2005 bonjour, que veux tu savoir ?comment trouver la distance la plus courte ?comment automatiser cette tache ?comment renseigner la base avec les résultats ? en en sachant plus, on essaiera de te répondre. amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
Pako Posté(e) le 4 février 2005 Posté(e) le 4 février 2005 Je crois qu'il veux créer une topologie ! :casstet: Command: _MAPTOPOCREATE à suivre ...... l'ACADien ! http://img124.exs.cx/img124/7999/start.gif
Quena Posté(e) le 11 février 2005 Auteur Posté(e) le 11 février 2005 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...
jms Posté(e) le 11 février 2005 Posté(e) le 11 février 2005 Salut QuenaJe 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]
Quena Posté(e) le 21 février 2005 Auteur Posté(e) le 21 février 2005 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.
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant