Google Maps API ver 2
上のやつはせっかくだから、新しいバージョンのGoogle Maps APIを使ってみました。というか、最初は旧バージョンで書いてたけど、完成後に新しいバージョンを使うように一部書き換えました。
なので、旧バージョンとの違いについて超簡単にまとめ。
ver 2のAPIをロードする
scriptタグのURLの"v=1"を"v=2"にする。
GPointがGLatLngに置き換えられた
API Ver2では、座標に関する情報は全部GLatLngクラスのインスタスが使われる。GPointを使ってる、想定している箇所は修正が必要。GPoint
のコンストラクタは、GPoint(x, y)
だが、GLatLng
のコンストラクタは、GLatLng(lat, lng)
*1で、引数の順が異なるのに注意。
GMap2クラスが追加された
GMap2
クラスはGMap
とインタフェース互換性がなく、いくつかのメソッド名が異なっている。また、ズームレベルの大小が逆転しているなどの違いもある。GMap
クラスを使い続けることも(少なくとも今のところは)できるようだ。
GOverviewMapControlの追加
新しく追加されたコントロールオブジェクトであるGOverviewMapControl
を使うと、バージョンアップしたGoogle Mapsで使われている小窓を追加できる。ただし、公式ドキュメントに記述が少なく、使い方が不明な部分が多い。また普通にすると、小窓が変なところに貼り付けられてしまうが、以下のようにすればGoogle Mapsのように地図の右下に重ねて表示させることができるようです(参考)。
var map = new GMap2(document.getElementById("map")); map.addControl(new GOverviewMapControl()); var overview = document.getElementById("map_overview"); document.getElementById("map").appendChild(overview);
触って気づいた部分についてしか書いてないので、他にも変更点はあると思います。
とりあえずhttp://www.google.com/apis/maps/documentation/#The_GMap_class_overviewのNew!が付いているところは要注意。