カテゴリー別アーカイブ: GoogleMap

今さら今からGoogle Maps JavaScript API v3 -まずは表示-

Google Maps JavaScript API v2で作ったシステム(ってほどのものでもないけど)を別案件でスライドさせて使おうと考えていました。
しかし、既にv2を動かすのに必要なAPIキーの発行が出来なくなっているので、v3にて再度作らないといけなくなりました。
なので今さらながらGoogle Maps JavaScript API v3を勉強です。
既にコンテンツ自体は出来あがってしまっていますが、メモも兼ねて数回に分けてエントリーしたいと思います。
今さら今からGoogle Maps JavaScript API v3 -まずは表示- の続きを読む

地図読み込み時に吹き出し位置を自動調整 googleMAP v3

googleMAPでマーカー&吹き出しを自動調整する時のメモ。

google.maps.event.addListener(marker, "click", function() {
 if(infoWindow) infoWindow.close();
 infoWindow = new google.maps.InfoWindow({
 content: "テキスト"
 });
 infoWindow.open(map,marker);
});

マーカーをクリックしたら画面に合わせて吹き出し位置が自動調整されるようになっています。

しかし初期読み込み時に吹き出しを表示しようとするとマーカーが中心位置になってしまい、吹き出しが自動調整されず格好悪い事になっていました。

http://chiebukurow.com/modules/QandA/view/10100756160.html
こちらを参考に解決しました。

tilesloadedってのがあるんですねぇ。

google.maps.event.addListenerOnce(map, 'tilesloaded', function () {
 infoWindow.open(map, marker);
});

GoogleMap v3 距離計測方法

GoogleMaps APIメモ

距離を計測するにはgoogle.maps.geometryライブラリを使用する。


var placeA = new google.maps.LatLng(35.786293, 140.072937);
var placeB = new google.maps.LatLng(35.558708, 139.446716);
var placeC = new google.maps.LatLng(35.95989, 138.202515);
// 2点間の距離
var distance1 = google.maps.geometry.spherical.computeDistanceBetween(placeA, placeB);
document.write(distance1 + “メートル”);
// 3点以上の合計距離
var distance2 = google.maps.geometry.spherical.computeLength(new Array(placeA, placeB, placeC));
document.write(distance2 + “メートル”);


■最初に出てたエラー
TypeError: google.maps.geometry is undefined

原因はAPI読込みの時に「libraries=geometry」と明記していなかったため。
<script type=”text/javascript” src=”http://maps.googleapis.com/maps/api/js?libraries=geometry&sensor=false”>