QA@IT

緯度経度からその地点のタイムゾーンを知る方法、もしくはWeb上のAPIを知りたい

5316 PV

緯度経度からその地点のタイムゾーンを知るAPIなどを知りたいです。できれば+900などの数字がいいですが、地域名(Tokyo)でもいいです。

実行環境はブラウザ上のJavaScript、もしくはサーバ上のRuby(Rails)です。

Google Maps APIなどで取得できるか調べてみましたが、探し方がまずいのか存在しないのか見つけることができませんでした。

どうぞよろしくお願いいたします。


2013/02/11 追記

最近気づいたのですが、去年の10月頃にGoogle からAPIが提供されたようです。
https://developers.google.com/maps/documentation/timezone/

回答

Google Maps APIには、そのための関数はないです。

Stack Overflowで、同じ質問に対して回答があったので、2番めの人の回答を引用すると、
http://stackoverflow.com/questions/5584602/determine-timezone-from-latitude-longitude-without-using-web-services-like-geona

(1)Download the database of cities from geonames.org
geonames.orgから都市のデータベースをダウンロード

(2)convert it to a compact lat/lon -> timezone list
緯度経度をタイムゾーンリストを作成

(3)use an R-Tree implementation to efficiently lookup the nearest city (or rather, its timezone) to a given coordinate
R木を使って、与えられた緯度経度に最も近い都市を探して、タイムゾーンにすればいいよって書いてあります。

編集 履歴 (0)
  • 回答遅くなりすみません!ありがとうございます。これよさそうですね。 -
編集 履歴 (0)
  • たくさんどうもありがとうございます!
    これ、一応全部タイムゾーン取得できるんでしょうか。これから見てみます!
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。