説明
指定位置にマップを移動させるにはcenterAtLatLng()またはrecenterOrPanToLatLng()を使います。どちらのメソッドもパラメータには表示する位置をGPoint形式で指定します。centerAtLatLng()は瞬時に指定した座標に移動するのに対し、recenterOrPanToLatLng()では移動地点が表示されている範囲にあればスムーズに地図をスクロールさせて表示します。範囲外にある場合にはcenterAtLatLng()と同じように瞬時に指定した地点に移動し表示を行います。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Sample</title>
<script src="http://maps.google.com/maps?file=api&v=1&key=ABQIAAAAasAJryKxWJnBFVJa487d9hTHGAxTVT7IRADYa-JdYz7xQ8IQZBSthgDZdggYpQHsmm6WYtHstQFfLA" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
window.onload = function() {
map = new GMap(document.getElementById("gmap"));
map.centerAndZoom(new GPoint(138, 37), 11);
map.addControl(new GLargeMapControl());
}
function mapMove1() {
var mx = document.getElementById("mapX").value;
var my = document.getElementById("mapY").value;
map.centerAtLatLng(new GPoint(mx, my));
}
function mapMove2() {
var mx = document.getElementById("mapX").value;
var my = document.getElementById("mapY").value;
map.recenterOrPanToLatLng(new GPoint(mx, my));
}
//]]>
</script>
</head>
<body>
<div id="gmap" style="width: 500px; height: 400px"></div>
<form>
経度:<input type="text" value="138" id="mapX" /><br />
緯度:<input type="text" value="37" id="mapY" /><br />
<input type="button" value="centerAtLatLngで移動" onClick="mapMove1()" /><br />
<input type="button" value="recenterOrPanToLatLngで移動" onClick="mapMove2()" /><br />
</form>
</body>
</html>