使用Google Distance Matrix服务限制搜索区域

时间:2015-04-21 16:55:54

标签: javascript google-maps-api-3

我正在使用GoogleDistanceMatrix来计算两个点之间的行驶距离,输入来自两个文本框。 但是在一个我想限制搜索结果(文本框中的辅助)的地方,只显示来自我的国家甚至我的州本身的地方。 守则如下:

var service = new google.maps.DistanceMatrixService();
        service.getDistanceMatrix({
            origins: [source],
            destinations: [destination],
            travelMode: google.maps.TravelMode.DRIVING,
            unitSystem: google.maps.UnitSystem.METRIC,
            avoidHighways: false,
            avoidTolls: false
        }, function (response, status) {
            if (status == google.maps.DistanceMatrixStatus.OK && response.rows[0].elements[0].status != "ZERO_RESULTS") {
                var distance = response.rows[0].elements[0].distance.text;
                var duration = response.rows[0].elements[0].duration.text;
                var dvDistance = document.getElementById("dvDistance");
                dvDistance.innerHTML = "";
                dvDistance.innerHTML += "Distance: " + distance + "<br />";
                dvDistance.innerHTML += "Duration:" + duration;

            } else {
                alert("Unable to find the distance via road.");
            }
        });

有人可以告诉我如何限制搜索结果。我也认为这是一个很重要的用途,所以还有什么可能是相同的好选择。

1 个答案:

答案 0 :(得分:0)

我认为您可以先使用geocoding service查找地点并传递其地点ID,然后将其提供给API方向。

在地理编码API中,您可以使用boundsregion来定义搜索区域。