Как проверить если доступный Google Street View и сообщение дисплея?

Я передаю lat и переменные СПГ и дисплей Google sreet представление в отделении. Проблема состоит в том, что, когда StreetView unavilable затем, ничто не отображено. Я хотел бы проверить, существует ли streetview для данного lat и СПГ, и отобразите сообщение. Вот мой код:

var myPano = new GStreetviewPanorama(document.getElementById("street2"), panoOpts);
var location = new GLatLng(lat,lng)
myPano.setLocationAndPOV(location);

Возможно, я должен использовать что-то как: Event.addListener(myPano, "error", errorMessage());

Какие-либо идеи?

18
задан Anthony Hatzopoulos 17 October 2012 в 01:27
поделиться

1 ответ

Вы можете ознакомиться со следующей ссылкой:

Определение того, поддерживает ли дорога функцию Street View, путем визуального осмотра GStreetviewOverlay, часто не представляется возможным или желательным с точки зрения пользователя. По этой причине API предоставляет сервис, который программно запрашивает и извлекает данные Street View. Эта услуга предоставляется с помощью объекта GStreetviewClient.

В основном вы можете использовать getNearestPanoramaLatLng() метод класса GStreetviewClient который вернет вам GLatLng ближайшей точки, где доступен просмотр улиц. Затем вы можете использовать метод distanceFrom() для проверки, находится ли ближайшая точка просмотра улиц в пределах определенного порога от вашей исходной точки.

Вот полный пример, который, как мне кажется, должен быть понятен:

<!DOCTYPE html>
<html> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
    <title>Google Maps API - Street View Availability</title> 
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false"
            type="text/javascript"></script> 
  </head> 
  <body> 
    <script type="text/javascript"> 
       var testPoint = new GLatLng(40.7140, -74.0062);   // Broadway, New York
       var svClient = new GStreetviewClient();

       svClient.getNearestPanoramaLatLng(testPoint, function (nearest) {
          if ((nearest !== null) && (testPoint.distanceFrom(nearest) <= 100)) {
             alert('Street View Available');             // Within 100 meters
          }
          else {
             alert('Street View Noet Available');        // Not within 100 meters
          }
       });
    </script> 
  </body> 
</html>
17
ответ дан 30 November 2019 в 06:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: