Подтвердить что ты не робот

Выделение границ штата и городов США в API карт Google 3

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

Как я могу это сделать, мне нужно иметь полную информацию о городе, чтобы окружить его полилиниями? Или есть способ, которым API-интерфейс карты может сделать это для меня.

4b9b3361

Ответ 1

True. Google не предоставляет эту функцию. Итак, что мы можем сделать... у нас может быть лат/длинная граница государства. И мы сами должны рисовать полигоны.

Я использовал этот объект JS. И изменил его на объект карты Google (google.maps.LatLng).

Например:

var statesobj = {"AK": [new google.maps.LatLng(70.0187, -141.0205),
new google.maps.LatLng(70.1292, -141.7291),
new google.maps.LatLng(70.4515, -144.8163)]}

Итак, теперь легко. Петля на этих латах/длинах. И вы можете нарисовать полигоны в каждом штате США.

Итак, это решение, которое я придумал. Если вы, ребята, знаете какую-то лучшую идею. Пожалуйста, поделитесь.

Ответ 3

API Карт Google не позволяет извлекать городские границы. Есть еще пара мест, из которых вы можете получить координаты:

API Flickr

Существует Flickr API, основанный на фотографиях, которые люди отмечают, но это так же точно, как люди, которые отмечают фотографии: так что он достаточно хорош для начальной загрузки, но, вероятно, не для производства: http://karya-blog.blogspot.com/2012/12/fetching-city-polygons-with-flickr-api.html

Данные о естественных землях

Точной альтернативой является www.naturalearthdata.com. Чтобы получить эти данные, вам просто нужно сделать два запроса: один с именем города и один с их идентификатором, чтобы получить параметры:

unlock.edina.ac.uk/ws/search?name=berlin&gazetteer=naturalearth&format=json

а затем

unlock.edina.ac.uk/ws/footprintLookup?format=json&identifier=14126951

и вы установили:)

Mapzen

Если вы можете предварительно получить данные, перейдите на Mapzen, у них есть полная и довольно точная база данных: https://mapzen.com/data/borders/

Ответ 4

Я боюсь, что API карт google не предоставляет никаких средств для доступа к областям (стране, штату, городу,...).

Если вы хотите выделить регионы, вам необходимо создать пользовательские оверлеи на основе данных, полученных в другом месте.

Ответ 5

Теперь основной пример карты содержит "mashup" данных. Когда идентификация данных подается в веб-службу, результирующий вывод может точно определять местоположения на карте. Он показывает, как географический маркер карты помещается на карту для определения определенного местоположения. Маркер карты может использовать значок по умолчанию (показан) или пользовательский образ, калибр или даже диаграмму. При желании карту можно настроить для отображения окна "Информация о марке карты", содержащего дополнительные данные о местоположении, при нажатии маркера.

Он включает ориентированные на данные цветные области (в данном случае, представляющие почтовые коды), наложенные на карту, например, в Вашингтоне, округ Колумбия. Logi Info может работать с данными границ ГИС для создания облачных оверлей для штатов, округов, городов, школьных округов и других областей. Как и маркер карты, можно щелкнуть области, чтобы отобразить всплывающее информационное окно с подробными данными.