我使用ipinfodb.com一段時間從用戶IP獲取緯度和經度以查看谷歌街景。但最近ipinfodb已經改變了他們的數據庫,並且大部分緯度/經度值被改變了,因爲我沒有得到街景。給定IP或緯度/經度的Next&Nearest Google Streetview
我正在使用「Google Maps Javascript API V3服務」,但不確定如何訪問下一個和最近的Google街景視圖。你能建議嗎?
問候
我使用ipinfodb.com一段時間從用戶IP獲取緯度和經度以查看谷歌街景。但最近ipinfodb已經改變了他們的數據庫,並且大部分緯度/經度值被改變了,因爲我沒有得到街景。給定IP或緯度/經度的Next&Nearest Google Streetview
我正在使用「Google Maps Javascript API V3服務」,但不確定如何訪問下一個和最近的Google街景視圖。你能建議嗎?
問候
下面一個getPanoramaByLocation方法是如何解決給定的latLng位置的給定半徑範圍內的街景,請注意一個例子,如果半徑小於50米最近的全景將返回
var streetViewService = new google.maps.StreetViewService();
streetViewService.getPanoramaByLocation(latLng, radius, function(data, status)
{
if (status == google.maps.StreetViewStatus.OK)
{
var nearStreetViewLocation = data.location.latLng;
//...
}
});
半徑不保證最接近的街道觀點。例如:如果視點距離10米,但您將半徑定義爲1000,則最近的未選中。所以,如果你有幾個點(有些真的很近,真有些遠),那麼我會仍然使用迭代:
var streetViewService = new google.maps.StreetViewService();
var radius = 10;
streetViewService.getPanoramaByLocation(latLng, radius, handler);
function handler(data, status) {
if (status == google.maps.StreetViewStatus.OK) {
var nearStreetViewLocation = data.location.latLng;
//...
} else {
radius += 50;
streetViewService.getPanoramaByLocation(latLng, radius, handler);
}
};
巧妙的解決辦法(+1);-) – Marcelo 2012-10-27 16:06:59
這並不就近尋找解決辦法:如果你擴展半徑(即2000)你沒有得到最近的視點。 – Tiit 2013-02-22 11:38:20