oitake blog

いろいろリンク

おすすめリンク

最近のエントリー

カテゴリー

20101012:コメントとトラックバックを停止したことにより、このサイトはアーカイブとなりました。以降、ご連絡はみもねるのウェブサイトへお願いします。
20100703:新ナマコメ(ナマコメ 2)を公開しました。コメントビューア付きで送信面においてもパワーアップしています。
旧ナマコメは将来的に使用できなくする予定なので、可能な限り新ナマコメをお使いください。
20091127:oitake は みもねる になりました。当ブログは無期限更新停止となります。詳細は最新の記事をご覧ください。

スポンサーサイト

一定期間更新がないため広告を表示しています


2009.12.16 Wednesday | | - | - | -

ぐるペパ:Google Maps内に全情報を表示する方向へ


 ぐるなびとホットペッパーのAPIを利用して住所からレストランを検索するウェブサービス「ぐるペパ」(現状、ぐるなびの検索結果のみ反映しています)。ゼロからコードを書き直して再出発しました。今までは文字情報を主体としたサービスでしたが、今後はGoogle Maps、地図を主体としたサービスとして開発を進めます。

 さて前回、「ぐるなびAPIのレスポンスに含まれる緯度と経度は何かおかしい。実際の店舗位置とズレている。何で?」とグチりました。
 でも、今日になってわかりました!これは当たらずしも遠からず、ぐるなびとGoogle Mapsの「測地」に対する「認識」がズレていたようです。
 まず、緯度と経度には、世界共通の測地系?である「世界測地系」と、日本独自の測地系?である「日本測地系」という、ふたつの測地系が存在します。よくわかんないけど。
 次に、ぐるなびは日本測地系を、Google Mapsは世界測地系を採用しています。
 つまり、世界測地系の地図上に日本測地系の座標でマーカーを配置すれば、当然実際の店舗位置とズレてしまう。そういうことです。
 ということは。日本測地系を世界測地系に変換する公式さえ入手できれば問題は解決したも同然。早速検索したところ、「JavaScript++かも日記」さんのところで「まさにそのもの」を発見したので利用させていただきました。こんな感じです。

latitude=latitude-latitude*0.00010695+longitude*0.000017464+0.0046017;
longitude=longitude-latitude*0.000046038-longitude*0.000083043+0.010040;

 PHPを想定していますが、処理系なんて関係ないくらい簡単ですね。

 というわけで。ぐるなびのレストランも正常に表示されるようになりました。おまけで吹きだしの中に店舗の画像と少しばかりの情報も記載。スペースが狭いから情報の取捨選択に迷います。
 次回までにはホットペッパーの検索結果も表示するようにしておきますが、今になってふたつの検索エンジンを利用する必要性が感じられなくなってきたりして…(;'з')

 ところで。「ぐるなびとGoogleMapsが一体になった飲食店マップのα版が公開」という記事がMarkeZineに掲載されていましたが、この分だとぐるペパの方が使いやすそうですよ。
 考えてみれば、ぐるなびとかホットペッパーとか、異なる企業のAPIを併用するサービスは、企業から見ると提案すら難しいのかもしれませんね。仲悪そうだから許可が下りないとか(σ'з')σ

2007.05.18 Friday | 22:48 | ぐるペパ | comments(2) | trackbacks(0)

スポンサーサイト


2009.12.16 Wednesday | 22:48 | - | - | -

コメント

「ぐるなびとGoogleMapsが一体になった飲食店マップのα版が公開」の記事の
サービスを作成した会社の者です。記事へのリンク、ありがとうございます。

ぐるなびとGoogleMapsの測地系の違いには私も悩まされました。
レスポンスの経度緯度を世界測地系に変更する方法ですが、
oitake様の採用された方法以外にも、ぐるなびAPIのRequestパラメータに
下記のパラメータを追加してやると、レスポンスの経度緯度が世界測地系で返る、
という方法が存在します。
(既にご存知でしたら申し訳ありません。)

&coordinates_mode=2

Webサービスのマニュアルを見る限り、ぐるなびの標準は日本測地系のようですね。
Responseの経度緯度は上記のようにして変換できるのですが、Requestの経度緯度を
世界測地系に変換するパラメータは、残念ながら現在実装されていないようです・・・。
ですので、ぐるなびに対して経度緯度検索を行う場合は、oitake様の採用された方法で
算出してやる必要がありますね。
sfukui | 2007/05/21 10:04 PM
貴重な情報をありがとうございます。早速プログラムに反映してみたところ、正常に動作しました。お恥ずかしい限りです…(ー"ー;)

そちらもぐるなびとホットペッパー、両方で検索できるようにされたんですね。しかもレスポンスすごく速いし…これでインターネットオプションを調整する必要がなくなったら、ぐるペパ出る幕ないかも(;'з')<ぅぅ
oitake | 2007/05/21 11:15 PM