Googlemaps Reverse GeoCoding Получить название страны, страны Великобритании - PullRequest
1 голос
/ 10 марта 2011

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

Великобритания состоит из Англии, Шотландии, Уэльса и Северной Ирландии, которые являются 4 отдельными странами, но карты Google (и большинство других стран)воспринимайте их всех как просто «Великобритания».

Мне нужно знать, какая конкретная страна в пределах Великобритании была нажата, а не только то, что была нажата Великобритания:

Я использую следующий JavaScriptи в настоящее время я просто использую функцию «watch» для визуальных студий, чтобы углубиться в «results [1]», чтобы увидеть, что там содержится.

  function initialize() {
    geocoder = new google.maps.Geocoder();
    var latlng = new google.maps.LatLng(51.8052184317649, -4.965819906250006);
    var myOptions = {
        zoom: 5,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    google.maps.event.addListener(map, 'click', function (event) {
        if (confirm('Is this the location you would like to you for your company?')) {

            geocoder.geocode({ 'latLng': event.latLng }, function (results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    if (results[1]) {

                    }
                }
            });
 }
        });
    }

Если я нажимаю, когда карта масштабируется достаточно далеко, название страны (например, Уэльс) возвращается с типами "administrator_area_level_1" и "политический", но когда вы увеличиваете масштаб, его уже нет, так как оно простодает адрес, который не содержит «Уэльс».

Кто-нибудь знает, как мне обойти это?Я уверен, что другие британцы сталкивались с этим?

Ответы [ 2 ]

0 голосов
/ 14 июля 2016

Страны Великобритании представлены как administrative_area_level_1 результаты, посмотрите на 2-й последний результат в этом примере (не полагайтесь на address_components для этого):

https://maps.googleapis.com/maps/api/geocode/json?&latlng=51.641033,-0.647507

0 голосов
/ 06 июня 2011

Не могу понять, как изменить геокод, чтобы получить страну в Великобритании, так как я думаю, что это на самом деле невозможно!

Заканчивается тем, что использует почтовые индексы и разрабатывает страны! Не самый лучший, но у меня это работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...