2006年04月11日

Google Maps Overlay 改 その2(透過地図衛星画像対応版)

Google Maps Overlayを参考に、Google Mapsが表示できる範囲全てをオーバーレイできるようにしたGoogle Maps Overlay 改というものを以前作ったが、さらに拡張して衛星画像と透過地図も表示できるようにしてみた。

Google_Maps_Overlays_20060907.zip
(2006-09-07: Overlay表示範囲の上限を設定可に)
(2006-04-28: Google Mapsの地図バージョンアップに対応)
(使い方は以前のエントリ参照)
(2006-09-17:画像が存在しない場合に対応したバージョンを作成

GE Maniacsでも取り上げられていたこの場所も
Ge Sweden1
すっかりあらわに。
Ge Sweden2

透過地図は整備されているところがかなり限られるけど、たとえばロンドンはこんな感じ。
Ge London-1

オーバーレイされた画像の透過率を簡単に調整できるGoogle Earthでは、透過地図を重ねるのはあんまり意味ないかもしれない。

追記 2006-04-14:
同じような手法でYAHOO MAPSと連携できないか探っているのだが、これはけっこう大変そうだ。 GE Maniacsで提案されている方法でも、要するにGoogle Earthで「どれだけ移動したか」というのは緯度経度で表される訳で(というか、Google Earthから外部CGIに渡せるパラメータは「現在表示している範囲の緯度経度」だけなのだが)、結局のところはその「緯度経度」→「YAHOO MAPSの地図URL」の変換をすることになる。この変換式はYAHOO MAPSの裏で動くJavaScript群(http://map.yahoo.co.jp/beta/conversion.jsなど)に含まれているのだが、これが結構ややこしい。
地図URLの生成そのものは http://map.yahoo.co.jp/beta/cero.js の511行目あたりにあるが、そこからfunctionを追って行くと、ぼくがオブジェクト指向なJavaScriptに慣れていないこともあって、かなり難解。なんにせよGoogle Mapsみたいにlog tan (π/4 - φ/2)一発、というわけにはいかない。

仮に無理やり移植したとして、JavaScript中に頻出しているなぞの定数をそのまま使い回したコードを配布すると、これはおそらくYahooの利用規約に違反する。コードを完全に理解し、自力で定数を導けば問題ないだろうが…

というわけでやって出来ないことはないかもしれないけど萎え萎え、というのがいまの正直な心境です。