世界測地系と日本測地系の変換

ちょっとググったらGoogle Mapは世界測地系ぐるなび日本測地系。お手軽変換公式はないかなとさらにググッたらAndroidのイメージをSDに押し込めるヒントを下さったWebooさんのブログにあたった。なんと奇遇な。そこから、Nowralさんの三角関数を使わない変換式を拝借して

Tokyo -> WGS84
lat = lat - 0.00010695*lat  + 0.000017464*lng + 0.0046017
lng = lng - 0.000046038*lat - 0.000083043*lng + 0.010040

WGS84 -> Tokyo
lat = lat + 0.00010696*lat  - 0.000017467*lng - 0.0046020;
lng = lng + 0.000046047*lat + 0.000083049*lng - 0.010041;

んな感じの変換をGoogle Mapの座標をぐるなびURIに埋め込む部分、マップ上のピンを立てる部分、お店選択でGoogle MapをAnimationする部分にペタペタと貼り付けた。ほぼズレがなくなった。わーい。ちょっとわかりづらいけど、下の3番ピンは和だいにんぐ あちょうというお店で、ぐるなび内にある地図の位置とほぼ一致している。もちろんAndroid Zaurusでも動く。右はZaurusのスクショ。「ぐるなび限定」って読めるかな。



オープンソースってステキ。マッシュアップって楽しい。


追記 欲しい人がいるとは思えないけど、Adamrockerさんのコードとのdiffを置いときます。around_here_grounavi.zip