Jump to content
Sign in to follow this  
jerkoo

comment calculer la distance entre 2 lieux géographiques ?

Rate this topic

Recommended Posts

bonjour

pour un portail marchand, je dois calculer la distance kilométrique pour trouver la boutique la plus proche géographiquement de l'acheteur.

J'ai pensé demander à l'acheteur de renseigner son code postal, mais comment calculer ensuite la distance par rapport à la base d'adresses de ma centaine de boutiques en France ?

Merci a ceux qui ont réfléchi a la question, je suis un peu sec sur la question ... :wacko:

Peut etre Google-map ou autre ont-ils des web-services a ce sujet ?

:)

Share this post


Link to post
Share on other sites

Bonjour,

La distance kilométrique "à vol d'oiseau" ? Par la route ? Le chemin le plus court ? Le plus rapide ?...

Si c'est la distance à vol d'oiseau qui t'intéresse, un calcul à l'aide des coordonnées géographiques (latitudes et longitudes de chaque point) te donnera la distance.

Tu as un exemple de code (en Perl, et explications en anglais) et des valeurs a utiliser ici : Latitude and Longitude formula

Pour trouver les valeurs des longitudes et latitude des points dont tu souhaites trouver la distance tu peux utiliser Maporama, chercher les adresses postales et tu trouveras les coordonnées sur la page de résultat.

Share this post


Link to post
Share on other sites

As tu vu sur www.mappy.fr ou sur www.viamichelin.fr. Je pense qu'il faut sous traiter le systeme chez eux. Sans quoi, a ma connaissance, il te faudra une base de données SIG mais cela coute relativement cher.

Pour une base de données SIG, tu peux aller sur www.intercarto.com

Mais, c'est pour faire quoi?

Share this post


Link to post
Share on other sites

Merci de vos réponses.

Pour PERL ... je ne connais pas => j'élimine, pas le temps de m'y mettre pour cette seule fonction :/

Merci pour Intercartoo, je viens effctivement de les contacter.

je vais ausi le faire pour mappy et via michelin, je n'y avais pas pensé...

Comme je l'explique plus haut, le but est d'attribuer une vente a la boutique la plus proche de l'acheteur sur un portail d'une centaine de commerçants.

Il y a peut être d'autres méthodes ? C'est en cours de recherche, vos expériences sont bienvenues :)

Share this post


Link to post
Share on other sites

Ben a la limite, lister les code postaux et les attribuer par boutique, mais fastidieux et si tu as pas un code postal saisi, c'est le bordel.

Bon courage pour ta recherche :)

Share this post


Link to post
Share on other sites
Pour PERL ... je ne connais pas => j'élimine, pas le temps de m'y mettre pour cette seule fonction :/

Le fait que ce soit du Perl n'est pas trop d'importance dans ce cas... C'était juste pour te montrer que dès l'instant out tu as les coordonnées géographiques des deux points le problème se règle en une ligne...

Maintenant comme l'a dit nounours1956 si ce calcul et donc la récupération des coordonnées viennent à être ponctuelles il va de soit que sous-traiter cette tâche est la bonne option. Tu peux chercher également du côté de Map24 France, ils ont des solutions commerciales intéressantes.

Share this post


Link to post
Share on other sites
Bonjour,

Je ne connais absolument rien à la programmation...

es-tu sûr ? Ta classe est géniale :D !!! Merci Régis !

le probleme est maintenant de transformer une adresse en coordonnées latitude/longitude, si je peux resoudre celà, le reste est une question de code ...

Il y a des api ou autres a ce sujet ?

Pour Info, map24 propose effectivement une API Ajax gratuite qui permet pas mal de choses en matiere de geolocalisation, je n'ai pas fini de regarder la doc : http://devnet.map24.com/manuals/doku.php?i...rials:tutorials

Share this post


Link to post
Share on other sites

Si tu regardes bien la page qui correspond au lien que je t'ai donné tu verras l'api de google maps permet de géocoder une adresse et pas seulement d'afficher des cartes.

Voir la section : HTTP Request qui est un peu plus bas.

Steph.

Share this post


Link to post
Share on other sites

Je ne pense pas qu'un systeme de geolocalisation soit suffisant (a moins de preciser que c'est du pifometrique) car, en plus de la distance, il faut aussi tenir compte des routes (vitesses, sinuosite, ...) et eventuellement des travaux sur ces dernieres.

J'ai travaille chez Michelin il y a quelques annees aux cartes et guides et ils avaient a l'epoque une solution pro tres performantes sur Minitel, qui doit toujours exister d'ailleurs. Idem sur Internet.

Maintenant, je ne sais pas s'ils ont depuis ouvert des API/WebService sur Internet. Faut voir avec eux.

Share this post


Link to post
Share on other sites
Si tu regardes bien la page qui correspond au lien que je t'ai donné tu verras l'api de google maps permet de géocoder une adresse et pas seulement d'afficher des cartes.

Voir la section : HTTP Request qui est un peu plus bas.

Steph.

exact : s'cuze je n'avais pas vu.

Du coup il suffit de rajouter un ch'ti calcul de distance entre les 2 adresse géolocalisées (il y a une tres bonne classe de calcul PHP ici : http://www.imaginerc.com/software/GeoCalc/)

Ca reste quand meme lourd, et comme dit destroyedlolo ( :thumbsup: ce pseudo !) tres théorique... mais ce que client veut... webmaster veut :whistling::smartass:

Merci de vos tuyaux, ca se precise peu a peu.

J'aurais aimé trouvé une solution "clef en main" comme d'habitude, mais en dessous de 4000 à 6000/an (maporama, map24...)... c'est difficile !

Edited by jerkoo

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...