Какие состояния мой маршрут перемещается через?

У меня есть страница, которая имеет карту с запуском и конечным местоположением. Я выполняю маршрут между ними для получения изящной строки, показывающей маршрут. Я в настоящее время использую Bing, но попытался с Google также. Я хотел бы знать, через какие состояния этот маршрут проходит так, я могу затем наложить те состояния с определенной информацией.

Любые предложения о том, как получить это, больше всего ценились бы.

Я использую Ajax SDK и для Bing и для Google. Обработка всего локального материала с js/jquery.

5
задан Bert Smith 22 March 2010 в 21:04
поделиться

2 ответа

Вы можете использовать запрос обратного геокода в Google Maps API, чтобы определить, в каком состоянии находится конкретная точка. Итак, я полагаю, вы могли бы обработать свой массив точек, возвращенный с указаниями запросить и вытащить состояние для каждого.

В API v2 это будет:

results.AddressDetails.AdministrativeArea.AdministrativeAreaName

Я думаю, что в v3 это немного более интуитивно понятно. Вы можете исследовать массив AddressComponents в результатах, чтобы найти подходящий тип:

{
    "long_name":"California",
    "short_name":"CA",
    "types":["administrative_area_level_1","political"]
}

Вы можете оптимизировать обратное геокодирование, используя разделяй и властвуй в массиве позиций на маршруте (если состояние одинаково для первой и средней позиции , то не выполняйте обратное геокодирование промежуточных точек).

2
ответ дан 15 December 2019 в 06:22
поделиться

Вы можете создать свой собственный сервис, используя шейп-файл и библиотеку типа SharpMap или базу геоданных типа mysql spatial, sql server spatial и т. д. Тогда вам просто нужно будет выполнить запрос пересечения, чтобы узнать, через какие штаты проходит ваш маршрут. Этот подход работает для любого набора полигонов, поэтому вы можете легко расширить решение на графства, избирательные округа, школьные округа и т.д.

0
ответ дан 15 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: