時分秒表記の緯度経度を、度に変換する
rubyコードのサンプル
def dms2tyo(dms) a = dms.split(".") return self.round(((a[0].to_f*3600 + a[1].to_f*60 + "#{a[2]}.#{a[3]}".to_f)/3600),10) end
dms2tyo("139.42.20.28") を呼び出すと 139.7056333333が戻ります。
dms2tyo("35.41.20.7")を呼び出すと 35.6890833333 が戻ります。
実際の計算は
"139.42.20.28" の場合
(139*3600+42*60 +20.28) / 3600 = 139.705633333333
これを、小数点以下10桁になるように四捨五入しています。
緯度、経度とも、おなじ計算式でOKです。