Un code postal n'est pas un endroit, il est l'itinéraire d'un porteur postal. Dans les villes des Etats-Unis orientaux il peut y avoir les codes postaux qui sont très petits, quelques bâtiments à Manhattan. Dans les grands états de l'ouest, les codes postaux peuvent être beaucoup, beaucoup de milles de large.
Des coordonnées de carte sont données par le « geocode » qui est une paire de latitude/longitude. Les données sont toujours exprimées en chaîne de caractères avec deux signés ou nombres décimaux non signés séparés par une virgule. La distance entre deux « geocodes » peut être calculée, pendant que la corneille vole, en employant la formule de Haversine.
http://en.wikipedia.org/wiki/Haversine_formulaTandis qu'une route orthodromique est la distance d'A-B la plus précise, ne pas être exactement son « exactitude » peut ce que vous voulez. Pour des distances courtes à travers notre terre, la géométrie plane est suffisamment précise.
http://en.wikipedia.org/wiki/Cartesian_coordinate_systemL'autre composant de l'exactitude de grand cercle va au mode du transport. Il est fortement utile pour des avions et des navires de haute mer. Mais si vos voyages d'A-B sont en l'automobile et vous devez traverser un fleuve, par exemple, la formule de Haversine s'attend à ce que vous alliez directement à travers le fleuve, qu'il y ait un pont ou pas.
Dans mon expérience avec les calculs et le Google Maps de Haversine, j'ai constaté que vous pouvez obtenir une approximation raisonnable de la distance motrice correcte en multipliant la distance de Haversine d'ici 1.15 à 1.25. Par raisonnable, je veux dire, « personne me suis plaint » au sujet de la marge de l'erreur. Pour des voyages courts, les calculs sont moins précis et le facteur de fondant doit tendre à l'à extrémité élevé. Pour de plus longs voyages les calculs sont plus précis et le facteur de fondant peut être réduit.
Le « vrai » conduisant la distance est déterminé en évaluant une série de « minitrips » un pour chaque tourner-point le long de l'itinéraire. Google Maps peut faire ceci. IIRC il y a un appel d'api qui renverra ces données.
Google Maps nouvellement libéré api a quelques dispositifs étonnamment robustes. Par exemple, il était nécessaire du « geocode » une adresse avant d'ajouter une punaise à la carte - maintenant vous pouvez simplement donner l'adresse ou le nom de l'endroit (« la Maison Blanche ») et Google Maps pourront souvent traduire le nom et/ou l'adresse en geolocation pour vous. J'ai un article ici à l'EE qui couvre certains des nouveaux dispositifs.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_3350-Using-the-Google-Maps-API-in-PHP.htmlL'extrait de code enseigne la manière de calculer de grandes distances de cercle.
Google et Yahoo Geocoders renverront un geocode si vous ne leur donnez rien mais un code postal, toutefois l'exactitude n'est pas tout celle grande. Il est le plus facile employer le Yahoo Geocoder.
http://developer.yahoo.com/maps/rest/V1/geocode.htmlEspérer que cette information t'est utile. Signaler svp en arrière si vous avez n'importe quelles questions. Les souvenirs, ~Ray