異なる回転楕円体をどうやってあわせるのか
では Googleマップに正しい位置関係で重ね合わせをするにはどうすればよいか、これも GIS に携わっていたら「測地系の変換」(ArcGIS でいう「地理座標系変換」)を行えばよいと分かります。人口分類だとか津波被害想定だとかライン、ポリゴン、その他諸々作成した地図を重ねたいプロフェッショナルの人にとっては混乱の元となりました。
ただ、Googleマップでプッシュピンを指した地点を示す座標は WGS84 で間違いないです。これは、投影した地図上に計算によって WGS84 の緯度経度を落としているだけで、地図の測地系は WGS84 ではないのです。
ArcGIS 9.2 当時では、上記の FAQ で示されているように「地理座標系変換」を行ってうまく重ね合わせする、という方法しかありませんでした。
回転楕円体が違う、つまり測地系が違うのだから当然なのですが、これだと普通の GIS ユーザーが持っているデータをすべて地理座標系変換する必要があります。場合によっては JGD2000 ←→ WGS84 の変換に加えて WGS84 ←→ Googleマップの測地系変換もしなくてはならないのです。これは面倒です。
そこで、Esri は考えました。
2008 年 6 月にリリース(米国)された ArcGIS 9.3 では「Auxiliary_Sphere」という投影法をサポートします。これは、
地図投影として利用する回転楕円体の半径サイズを変更する
というものです。測量(緯度経度の計測)は回転楕円体に基づいているけど、地図に投影する際の地球の大きさは球で考えるというものです。詳しくはこちらの記事で解説しています(以前この記事では「投影法の力で測地系を変更している」と説明していましたが適切ではありませんでした)。
「えーー!!」と思ったのは自分だけだったのか、周りで騒ぎになることはありませんでした。
ArcMap では、異なる地理座標系(=測地系)のデータを重ね合わせしようとすると「地理座標系変換」を促してきます。
これが自然な姿ですが「Auxiliary_Sphere」という投影法を使って、測地系自体は WGS84 を使いつつ投影法の力で Googleマップ仕様の回転楕円体に変換することができるようになったのです。地理座標系変換は必要ありません。Googleマップ由来のタイル仕様で作られた ArcGIS Online のベースマップを追加しても地理座標系変換が表示されないのは、あくまでも測地系は WGS84 だからです。
「座標系」は GIS を始めると最初に出てくる鬼門です。測地系の変換を理解するには結構な練度が必要です。だからといって地図投影する際に使う地球の定義が地理座標を求めたときの地球の定義と違うなんてことをしたら、座標系を説明するのがまたややこしくなる、、、そう思ってしまいました。むしろ知らないまま方が幸せのままでいられるかもしれません。いやいや、我々職業 GIS の立場だといずれ知らないと困る日が来るはずです。
ちなみに、他のソフトだとどうなのか気になったので QGIS 2.12.3 で確認してみました。QGIS で WKID:3857 は "Pseudo Mercator" という名称のようです。空間参照のパラメーターを見ると、普通のメルカトル図法で、回転楕円体が球体となっていました。
QGIS のリアルタイム投影変換できるのかも気になったので試したところ、Mercator(54004) と WebMerctor(3864) は正しい位置関係で重なっていました。QGIS はデフォルトでオンザフライ変換が有効になっているためで、"オンザフライCRS変換を有効にする" のチェックを外すとずれます。QGIS は "オンザフライ~" を無効化すると地理座標系、投影座標系にかかわらず同一座標で重ね合わせしかしないようですね。
そして Web メルカトルの由来につながります。