Hammer-cylindrical homotopy

地図投影法を開発してみたシリーズ5

Equal-area ovalシリーズ3部作その3。前回に比べて独自部分が少ないので解説多めで。

https://research.tableau.com/paper/bevy-area-preserving-transforms-map-projection-designersから

今回はStrebe's homotopyを使います。 https://www.mapthematics.com/forums/viewtopic.php?f=7&t=627&start=10でも言及されていますが、Hammerとcylindrical equal-areaを混ぜるのにどっちをどっちに混ぜるのかで極の形が変わってきます。手順を追ってみます(図は面倒なので https://research.tableau.com/paper/efficient-technique-creating-continuum-equal-area-map-projectionsの図1から想像してください)

cylindrical equal-areaをAとする場合

  1. Aを使い球面から平面に写像します。極は平面上の線に写像されます。『極線(pole line)』といいます。
  2. 平面上で原点を中心に縮小してからA-1で球面に戻します。縮小することで極線が『A-1で極に戻される、平面上の座標たち』とは異なった位置になってしまいます。よって極線が球面上の曲線に写像されます。
  3. Bを使い球面から平面に写像します。BはHammerでした。Hammerは1対1写像なので曲線は曲線に写像されます。
  4. 面積比を戻すために拡大します。もちろん曲線は曲線のままです。

HammerをAとする場合

  1. Aを使い球面から平面に写像します。極は平面上の点に写像されます。写像された極である点を極点と呼ぶことにします。
  2. 平面上で原点を中心に縮小してからA-1で球面に戻します。縮小することで極点が『A-1で極に戻される、平面上の座標』とは異なった位置になってしまいます。よって極点が球面上の極ではない点に写像されます。
  3. Bを使い球面から平面に写像します。Bはcylindrical equal-areaでした。極点が極にないので極点は点のまま写像されます。極線に引き伸ばされるようなことはありません。
  4. 面積比を戻すために拡大します。もちろん点は点のままです。

このように、cylindrical equal-areaをAとする場合にはpole lineになり、HammerをAとする場合にはpointed poleになります。
そして前者はWVG: Wagner Variations Generatorに含まれてしまうので私から特に言うことはありません(あと個人的にpointed poleのほうが好き)。以後後者の話となります。

f:id:dummy_index:20200910222519p:plain
Hammer-cylindrical homotopy, k=0.25
f:id:dummy_index:20200910222606p:plain
Hammer-cylindrical homotopy, k=0.5
f:id:dummy_index:20200910222639p:plain
Hammer-cylindrical homotopy, k=0.75

原点での縦横スケール比については、混ぜる比率に関わらず必ずBの比となってしまう(Aによる比をA-1が打ち消してしまう)ので別途調整のこと、となっています。 ここで面白いことに、混ぜてできた図法において、外周のY座標が必ず\sin\phiに比例することに気づきます。こうなる理由を考えると、Hammerだとややこしいので、hemisphereをazimuthal equal-areaで投影縮小したと考えればわかりやすいです。縮小して戻すことにより、hemisphereの外周だった大円は小円に写像されますが、外周だけに着目すれば、(3次元の)Y座標は比例的に縮小されます。Lambert azimuthal equal-areaはこのY座標をそのまま平面上のY座標に取り出す操作になるので比例関係が保たれることになります。

なら前々回と前回に合わせてy=\sqrt{2}\sin\phiになるように調整したらどうだろう(つまり縦寸を合わせる)。Hammer-Peters homotopyと名付け…いや概念として狭め過ぎでは

f:id:dummy_index:20200910222734p:plain
Hammer-Peters homotopy, k=0.25
f:id:dummy_index:20200910222810p:plain
Hammer-Peters homotopy, k=0.5
f:id:dummy_index:20200910222836p:plain
Hammer-Peters homotopy, k=0.75

前回のに比べてなんとなくHammer感が強い気がします。

前々回はともかく前回と今回はこの縦寸にこだわる必要はあまりないです。なのでパラメータと縦横比を振ってひずみ評価をしてみます。…というところで続く(Airy-Kavrayskiyとかの情報を集めている状況で、もう少しかかります)

github.com

2020.09.10 初版 2020.09.12 シリーズ番号修正