2017-06-10 35 views
0

JavaScript用Google Maps APIを使用しています。 有効なランダムなストリートビュー座標を生成するにはどうすればよいですか? APIのデフォルトメソッドがありますか、独自のメソッドを記述する必要があります。どのようにすればいいですか?ランダムなGoogleマップのストリートビュー座標をJavaScriptで生成する

+0

私は間違っているかもしれませんが、緯度と経度を使用してストリートビューを取得できると思います。この人は緯度と経度をランダムに生成する方法を説明しています - > https://stackoverflow.com/a/6878845/8085668 – WizardCoder

+0

これは簡単ですか?経度と緯度の2つの有効な値を作成し、それぞれの場所からランダムにサンプリングします。 – nikkypx

答えて

1

ストリートビューは一部の地域でのみ使用できるため、すべての緯度/経線のペアがストリートビューパノラマの有効な場所になるわけではありません。問題はありません - 救助へのStreetviewService!

ランダムlat/lngを生成し、StreetviewServiceを使用してその場所に有効なパノラマがあるかどうかを確認します。そうでない場合は、別の場所に移動してください。

地球の表面の多くにはストリートビューのデータがないので、小さな領域内の乱数を選択することができます。海洋に上陸する危険を何度も繰り返すのではなく、米国の境界である。

function TryRandomLocation(callback) { 
    var lat = (Math.random() * 90) - 90; 
    var lng = (Math.random() * 180) - 180; 
    var sv = new google.maps.StreetViewService(); 

    // Try to find a panorama within 50 metres 
    sv.getPanorama({ 
     location: new google.maps.LatLng(lat, lng), 
     radius: 50 
    }, callback); 
} 

function HandleCallback(data, status) { 
    if (status == 'OK') { 
     // Call your code to display the panorama here. 
    } else { 
     // Nothing here! Let's try another location. 
     TryRandomLocation(HandleCallback); 
    } 
} 

window.onload = function() { 
    TryRandomPanorama(HandleCallback); 
} 
関連する問題