Google Earth(TM) 地図サービスのオススメスポット・Wiki更新状況・おもしろい情報の紹介などを書き綴っていきます。

木曜日, 9月 13, 2007

Ruby + WebAPI

 先日の楽天宿泊施設APIとのマッシュアップネタについてです。  まずはソースです。IDは*印にしています。  rakuten_hotel.rb  RubyでXMLを効率的に扱うためのライブラリであるREXMLとについてはこちらの記事、ヘッダをつけるために利用できるcgiライブラリについてはこちらの記事で取り上げました。  ここらあたりの記事と今回のサンプルとの違いは「GoogleEarthからパラメータを受け取る」という点でしょう。これはcgiライブラリを利用して取得します。  query_stringでパラメータを取得して、&や=で分割しています。本来はパラメータの設定ももうちょっと体裁よくすれば良かったですが、パラメータを送るネットワークリンクを変更するのが面倒だったのでこんな感じにしてしまいました。  測地系変換のスクリプトを利用する前に3600(または360000)を乗じたり除したりしているのは、楽天のAPIが秒単位で小数点第2位までしか受け付けないという仕様のためです。3600の掛算・割り算で秒と度の変換、100の掛算・割り算で(整数と小数の変換を絡めて)小数点第2位への変換をしています。  あと、無意味に型を変換していますが、これも面倒なのでそのままです。。

0 コメント: