一番近いストリートビューに対応した位置を取得する

説明

一番近いストリートビューに対応した位置を取得するにはnew GStreetviewClient()で生成されたオブジェクトのgetNearestPanoramaLatLng()を使います。最初のパラメータに調べたい座標をGLatLng形式で指定します。このメソッドは値を返しません。返される座標値を取得するにはgetNearestPanoramaLatLng()の2番目のパラメータにコールバック関数を指定します。このコールバック関数には、ストリートビューの座標値が渡されます。座標値はGLatLngオブジェクトで渡されます。渡された値がnullの場合は近くにストリートビュー対応場所がなかったことになります。多少離れている場合でもnullになるので使用には注意が必要です(ここらへんは多分、将来改良されるのではないかと思います)。

サンプルプログラム

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>Google StreetView Sample (グーグルストリートビューサンプル)</title>
<link rel="stylesheet" href="css/main.css" type="text/css" media="all">
<script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAasAJryKxWJnBFVJa487d9hTHGAxTVT7IRADYa-JdYz7xQ8IQZBSthgDZdggYpQHsmm6WYtHstQFfLA" type="text/javascript"></script>
<script type="text/javascript"><!--
window.onload = function(){
var myPoint = new GLatLng(35.658517,139.902333);
var streetObj = new GStreetviewPanorama(
document.getElementById("viewArea"),{
latlng: myPoint
});
var svcObj = new GStreetviewClient();
svcObj.getNearestPanoramaLatLng(myPoint, function(latlng){
document.getElementById("result").innerHTML = latlng;
if (latlng) {
streetObj.setLocationAndPOV(latlng);
}else{
alert("近くにストリートビュー対応地域がありません");
}
});
}
// --></script>
</head>
<body>
<h1>一番近いストリートビューに対応した位置を取得する</h1>
<div id="viewArea" style="width:640px;height:480px;"></div>
<div id="result"></div>
</body>
</html>
サンプルを実行
[戻る]