undocumented google maps API

前に “undocumented google maps API” というページを作ってよ、とひとのタスクキューに勝手に追加したのだけれど、それを作ってもらえる前に似た名前のものを見つけてしまった。
Undocumented Features – GoogleMapki

undocumented MS-DOS とかという本があった(気がする)のを思い出す。google maps はドキュメントに載っていることで十分こぎれいなものが作れるけれど、もうちょっとなんとかしたいと思っても、中身がobfuscateされているのでシンボル名がすべて1文字か2文字。どうすればいいのかさっぱりわからない。そんなわけでMS-DOSの非公開システムコールとおんなじぐらいに解析するのはめんどくさいはず。

けっきょくやりたかったこと(地図のボックスの一番下にあるgoogleのロゴと利用規約のリンクを上に81pxずらす)は載ってなかったけれど、大きな収穫が。

map.spec.getLowestZoomLevel(point,size,viewsize) – calculates the closest zoom level which covers a specified area. The parameters are

1: a GPoint object specifying the map centre (e.g. map.getCentreLatLng( ))
2: a GSize object specifying the required width and height of the area in longitude and latitude degrees
3: a GSize object specifying the size of the viewport, you can use map.viewSize.

ようするに指定した中心で、指定した範囲に散らばるマーカをすべて表示するにはズームレベルをどこまで大きくする必要があるのかを返してくれるメソッド。APIをいじって遊ぶレベルから一歩踏み出すと普通に必要なものだけれど undocumented. こんなかんじで一歩先は泥沼。そんな google maps API の中での道しるべとなることでしょう。


About this entry