Зип-код не будет положение, оно будет трасса почтовой несущей. В городах восточного США может быть зип-код очень мало, немного зданий в Манхаттан. В больших положениях запада, зип-код могут быть много, много миль широких.
Координаты карты даются «geocode» будет пара широты/долготы. Данные всегда выражены в характерной черте при подписанное 2 или неподписанные десятичные номера отделенные запятым. Расстояние между 2 «geocodes» можно вычислить, по мере того как ворона летает, при помощи формулы Haversine.
http://en.wikipedia.org/wiki/Haversine_formulaПока трасса большого круга будет самым точным расстоянием A-B, своя «точность» не может быть точно вы хотите. Для коротких расстояний через нашу землю, проекционная геометрия достаточно точна.
http://en.wikipedia.org/wiki/Cartesian_coordinate_systemДругой компонент точности большого круга идет к режиму перевозки. Это будет весьмой полезным для самолетов и ocean-going сосудов. Но если ваши перемещения A-B автомобилем и, то вам нужно пересечь реку, например, формула Haversine ожидает, что вы идете прямо через реку будет ли мост или не.
В моем опыте с вычислениями Haversine и картами Google, я находил что вы можете получить разумно приближение правильно управляя расстояния путем умножать расстояние Haversine к 1.15 к 1.25. разумно, я намереваюсь, «никто пожаловался» о относительной величине погрешности. Для коротких отключений, вычисления более менее точны и фактору fudge нужно клонить к верхнему сегменту. Для более длинних отключений вычисления более точны и фактор fudge можно уменьшить.
«Поистине» управляющ расстоянием определено путем оценивать серию «minitrips» одного для каждого поворачивать-пункта вдоль трассы. Карты Google могут сделать это. IIRC там будет звоноком API возвратит эти данные.
Нов выпущенные карты API Google имеют некоторые изумительный робастные характеристики. Например, было обязательно к «geocode» адрес перед добавлять pushpin к карте - теперь вы можете просто дать адрес или имя положения («Белого Дома») и карты Google часто будут перевести имя and/or адрес в geolocation для вас. Я имею статью здесь на EE покрывает некоторые из новых характеристик.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_3350-Using-the-Google-Maps-API-in-PHP.htmlФрагмент Кодего учит дороге вычислить большие расстояния круга.
Google и Yahoo Geocoders возвратят geocode если вы не даете им ничего а зип-код, то тем ме менее точность не совсем то большое. Yahoo Geocoder самыми легкими для использования.
http://developer.yahoo.com/maps/rest/V1/geocode.htmlПонадейтесь что этот info полезн к вам. Пожалуйста вывесьте назад если вы имеете любые вопросы. Самые лучшие отношения, ~Ray