休日に直そうと思っていたもの。
この12月から、Google Maps の測地系の扱いが世界系に変更になりました。
使ってない人はなじみが少ないかも知れないけど、測地系とは、地図の経度・緯度情報の基準となるものです。Google Mapsはゼンリンの地図に対応した時期頃は、日本周辺はTokyoを中心としたTokyo測地系(もどき?)という測地系でした。これが、世界測地系に変更になったということは、Tokyo測地系でデータを入力すると、ずれがでる問題が発生するわけです。
うちで導入しているプラグインのNP_GoogleMapsでは、最初から世界測地系でデータを持つようにできているので問題は無いはずだったのですが、私がTokyo測地系のデータも保持できるように改造したために、Tokyo測地系データ部分でずれが発生するように…うむむ。
修正方法はそう難しくなくて、NP_GoogleMapsでTokyo測地系のデータをそのまま渡している部分に、
$mdx = $mapdata["x$k"] - 0.0032027777777777775;
$mdy = $mapdata["y$k"] + 0.003236111111111111;
と、座標をずらす数値を加えただけ。
この変更は、東京から遠くなるにつれて誤差が大きくなるらしいのだけど、わたしの持ってるデータは東京周辺が多いので、とりあえずこれだけ。
これ以外に、ページ表示速度の問題を解決しようと思ったのだけど、そちらはおいおいということで。
コメント