Google Maps APIバージョン2変更点概要

2006/4/4、Google maps apiがversion 1からversion 2にupgradeしました。 ここでは、upgradeの内容を説明したいと思います。

update概要

version 2 APIはversion 1 APIと99% backward compatibleらしいです。 そのため、大抵の場合はversion 1 APIを使っていてもそのまま動くそうです。

version 1 APIはそのうち使えなくなるとgoogleサイトに書いてありました。 「問題が発生しなくても最低1ヶ月はversion 1 APIを使えるようにする、 でも、移行がうまく出来ない人が多ければもっと待つけどね。」 というような感じらしいです。(2006/04/04現在)

Version 1 and Version 2 will coexist for at least one month no matter how few bugs are reported, and we may preserve Version 1 of the API for longer if people report many or complex transition problems.

新機能

Google maps apiバージョン2には以下の新機能が追加されています。

  • Javascriptによるライブラリのサイズが約半分になった。 それにより読み込みが高速化されるはず。

  • 日本、ヨーロッパ、アメリカと世界の主要都市で今より2段階細かい衛星画面が出るようになった。

  • GOverviewMapControlの追加。地図の角に概観を表示する小さな窓を使えるようになった。

  • 拡張性が高くなった。CustomコントロールやCustomオーバーレイを書けるようになった。

  • オブジェクトを解放するメソッドの追加。IEでのメモリリークの解消できるようになった。

  • デバッグログ機能の追加。alert()をGLog.write()に置き換えると使える。

version 1と2での非互換機能

  • Native XSLTが無いブラウザでのGXsltサポート。SafariでGXsltが使えなくなる。

  • GMapとGMarkerがopenInfoWindowXslt()をサポートしなくなった。

  • centerAndZoomを使う前にsetMapTypeを使えなくなった。 位置の初期化をsetMapTypeを使う前にやらなければいけなくなりました。

  • ドキュメントに載っていないメソッドを使っていた人が大変。 undocumentedなメソッドは劇的に変わったので、それを使っていた人はほとんど動かなくなったはず。

その他、APIをざっと見た感想

まず、Eventが充実したという感想を持ちました。 例えば、version 2からは、キーボードイベントを取得するGKeyboardHandlerが追加されていたり、GMarkerにmouseoverやmouseoutイベントが追加されていたりします。 これって欲しかったんですよね。

overlayのz-indexがgetできるようになりました。 南側にあるマーカは北側にあるマーカよりも手前に出るようになっています。 version 2では、重なり具合をCSS的なz-index値として取得できるようになっています。

GLatLng。distanceFrom()で2地点間の距離を測れるなど、結構便利そう。

その他、すごくいっぱいAPIが増えていると思われます。