2010-09-29 34 views
5

Tôi đã có một ứng dụng web sử dụng V3 JavaScript API của Google Maps để hiển thị googlemap thông thường và Chế độ xem phố cạnh nhau. Khi bản đồ thay đổi vị trí, nó cho phép chế độ xem phố theo dõi nó bằng cách sử dụng StreetViewPanorama.setPosition().Kiểm tra tính khả dụng của Chế độ xem Phố với API JavaScript của Google Maps V3

Tuy nhiên, khi tôi cuộn bản đồ đến một nơi không có Chế độ xem Phố, hình ảnh chế độ xem phố vẫn bị kẹt ở vị trí cuối cùng. Phương thức getPosition() của nó trả về cùng LatLng như là sơ đồ chủ.

Làm cách nào để biết liệu tôi có chuyển đến một địa điểm không có Chế độ xem phố không?

Trả lời

2

OK, tôi đã tìm thấy câu trả lời, nếu không phải là câu trả lời.

Sau mỗi lần di chuyển, hãy sử dụng StreetViewService.getPanoramaByLocation() để chụp ảnh toàn cảnh gần nhất trong phạm vi N mét. Dựa trên đó bạn có thể ở nơi bạn đang ở, di chuyển, hoặc setVisible (false).

tôi đã sử dụng một lá cờ và một setTimer để ngăn chặn rất nhiều cuộc gọi không cần thiết để getPanoramaByLocation như thế này:

var check_availability_lock = false; 
var check_availability = function() { 
    if (check_availability_lock) { 
     return; 
    } 
    check_availability_lock = true; 
    var availability_cb = function(data, status) { 
     check_availability_lock = false; 
     // console.log("status = ", status); 
     if (status !== 'OK') { 
      map.setVisible(false); 
     } 
     else { 
      map.setVisible(true); 
     } 
    } 
    setTimeout(function(){ 
     var latlng = map.getPosition(); 
     svc.getPanoramaByLocation(latlng, 50, availability_cb); 
    }, 2000); 
}; 
+0

http://code.google.com/apis/maps/documentation/javascript/reference.html# StreetViewService –

+0

Một vấn đề với phương pháp này là mỗi cuộc gọi đến getPanoramaByLocation trả về ~ 2Mb dữ liệu không bao giờ được xử lý để trang web của bạn sẽ nhanh chóng trở nên không ổn định và bị lỗi. Hạn chế các cuộc gọi đến getPanoramaByLocation được khuyến khích mạnh mẽ. Tuy nhiên, không có phương pháp thay thế nào để xác định tính khả dụng của ảnh toàn cảnh. – user1813319

Các vấn đề liên quan