ネットサービスとかGoogleとか豆知識とか。

Index > Google Maps API > 経度・緯度を60進法から10進法へ変換
Google Maps API
2005年09月21日 00:26

経度・緯度を60進法から10進法へ変換

  • このエントリーをはてなブックマークに追加
  • ... PV
スポンサード リンク

多くのWeb地図サービスでは、経度や緯度のパラメータが60進法で与えられている。一方、Googleマップ及びGoogle Maps APIでは10進法が利用されている。なんらかの理由で60進法から10進法への変換が必要になった時は、以下の変換式を利用するとよい。

139°45′35.187″

= 139 + (45 / 60) + (35.187 / 60 / 60)

= 139.759774167

「度」はそのままで、「分」を60、「秒」を3600で割って、それらを足し合わせるだけである。

ちなみに逆に10進法から60進法へ変換するには、この逆を計算すればよく、

度 = int(139.759774167) = 139

分 = int(0.759774167 * 60) = int(45.58645002) = 45

秒 = int(0.58645002 * 60 *1000) / 1000 = 35.187

となる。

(追記) JavaScriptでは、int()にあたる関数はMath.floor()です。

(追記) 世界測地系と日本測地系にはズレがあります。(参照)

※間違いがあったので修正しました。m(_ _)m(2005/10/1)

※さらに間違いがあったので修正しました。m(_ _)m(2006/1/6)