我知道半徑小於50米的getPanoramaByLocation會返回最近的街景全景圖。但是,對於一些地點,並不總是街景。那麼,我做的是這樣的:使用鐳半徑大於50米的getPanoramaByLocation獲取最近街景的最佳方式
function insider_function(locations) {
var place = new google.maps.LatLng(locations[local_idx].lat,locations[local_idx].lng);
sv.getPanoramaByLocation(place, 50, function(data, status) {
if (status == google.maps.StreetViewStatus.OK) {
insider_function_2(locations[local_idx], data);
} else {
sv.getPanoramaByLocation(place, 100, function(data, status) {
if (status == google.maps.StreetViewStatus.OK) {
insider_function_2(locations[local_idx], data);
} else {
alert('Internal error: ' + status + locations[local_idx]);
}
}
}
如果半徑50沒有返回任何結果,我調用半徑100但還是我越來越警惕ZERO_RESULT一些地址。如果我通過一個非常大的數字,比如說9999,我可能會看到街景非常遠的大多數其他位置,街道都是封閉的。
那麼,什麼是讓半徑超過50
更大最近街景服務全景圖我不知道谷歌地圖是如何做到這一點的最好辦法。
例如,如果我使用「2300 Geng Rd,Palo Alto,CA」,座標是37.4513333,-122.1214268。 getPanoramaByLocation半徑100將返回結果爲零,但有在街道視圖: https://www.google.com/maps/place/2300+Geng+Rd,+Palo+Alto,+CA+94303/@37.4513333,-122.1214268
因此,我必須多次調用sv.getPanoramaByLocation才能獲得封閉的街景視圖?這將推遲網站完成加載。 –
或者您也可以使用更大的半徑。 – ztan