なんつーかすっげえずれた場所が表示されるwwwwww
やっぱGPSと比べるとだめぽwwwww

とかちょっぴり思ってたのですが、よく見るとMapionとGoogleMapsで表示される場所がびみょーに違う。
(Mapionのほうが現在位置に近い)
なんでだー?

と思って色々と調べてみたら…

1.日本の人ががんばって測量して日本地図を作りました
2.GPSが発明され、全世界の正確な座標がわかるようになりました
3.改めて確認してみたら昔作った地図はズレてました

ということらしいのです。(だいぶ適当)
これは日本に限らずほかの国でもばらばらにずれちゃってるらしい。
しかも、過去にそのずれている状態で膨大な資産ができちゃってるのでいまさらパッと移行するわけにもいかなくて混在しちゃってる状況みたいです。

で。
マピオンもAIR-EDGEも国内のサービスなので座標は全部旧測量系らしいのです。
なのでAIR-EDGEで得た座標データをマピオンに投げれば何も問題はありません。
ですが GoogleMaps は世界レベルの地図サービスなので、全世界で矛盾のない座標系を使わないと成り立ちません。
というわけで GoogleMaps が採用しているのは新測量系。

だからずれちゃう。

なら変換すればいいじゃんという話になるんですが、なんか国土地理院で配布している何MBもある変換表で変換しないとダメだとか…!
アホか!
そんなデカいファイル同梱できるか!
しかも使用には申請が云々…

と思ったんですが探してみたら超カンタンな計算式で変換する方法を公開している方が!
ネ申!!
0.5秒程度の誤差があるらしいですが、今回のような使用法なら全然問題ないです。

というわけで組み込んでみたらだいぶばっちりでした。
マピオンと比べるとたしかにちょっとズレてるけど多分現実の距離で5m以内くらいのような感じです。

あとは外部ファイルで地図サービスを追加・削除できるようにして、10回程度の測量での座標の平均値を出して精度を上げる(上がるのか?)機能を付けようかと思います。
仕事の合間にコーディングするので電話が少なければ完成が早まります(ぉ

しかし、そんな国ごとにズレている地図を全部くっつけて世界地図を作って、しかも衛星写真とピッタリになっているとは。GoogleMaps えらい。