カクカクしかじか、GPSロガーの出力するNMEAファイルの中身を眺めながら、緯度経度の数字の羅列に吸い込まれていたら、ある2点の緯度経度から、その2点間の距離を知りたいと思い、検索し続ける毎日。
緯度の差からその距離、経度の差からその距離が求められれば、 後は三平方の定理によってそれぞれの二乗の和の平方根で結果は出る事は分かったのです。
緯度に関しては比較的簡単に(厳密には単純計算とはならない様ですが…)、地球の半径から円周を求め、360度で割れば1度当たりの距離。さらに60で割れば1分。それをさらに60で割れば1秒の距離が求められる。
経度が問題。赤道上で無い限り、その求めたい地点における地球の半径が分からなければならない。そのためには三角関数を使って、その緯度での半径を求めてから、緯度のときと同様に距離を求める。
そして、緯度の距離、経度の距離から2点間の距離が求められる。
googleで「緯度 経度 距離」と検索すると山ほど答えが出てくるので、公式についてはここでは触れませんが。そして、検索結果の計算方法に使われている地球の半径がまちまちで、どれを使うべきか…。
なお、これらの計算方法で求めて良いのはあくまでも極めて近い2点間のみ。球形を考慮した計算までする場合は、もっと様々な考慮が必要ですし、地球は完全球体ではなく歪んでいるので、その修正も本来は必要。
でもムリです。三角関数と、平方根と、あぁ、もっと勉強しておけば良かった…. >.<