タグ

Programmingとmapに関するtaka-junのブックマーク (2)

  • Ruby geocoderがすごい - もぎゃろぐ

    住所を緯度経度に直したり、緯度経度から住所を求めたりする操作をgeocodingと言って、Google Maps APIを使うとまあたいていのことはできる。 ロケタッチAPIとか、Yahoo!ジオコーダAPIという手もある。 それはともかく、そのへんをパチパチ叩くコードを書いていて、「こんなのもうとっくに誰かが書いてんじゃないかなー」と思ってぐぐってみたらなんかすごいのが出てきた。 Ruby Geocoder 住所と緯度経度の相互変換はもちろん、距離や範囲の扱い、Google以外のAPIへの対応、キャッシュ処理など、「実装しようかなー。でもめんどくさいよね」とか思って先送りしていたような機能がほとんど全部実装されている。 住所の取得 require 'geocoder' # 日語ロケールに設定 Geocoder.configure( :language => :ja, :units =>

  • iOS: 地図にデータを効率よく表示する - ワザノバ | wazanova.jp

    http://robots.thoughtbot.com/how-to-handle-large-amounts-of-data-on-maps/ thoughtbotのTheodore Calmesが、87,000件のホテルのデータ (位置/名称/電話番号)を効率よく表示するように工夫した事例を紹介しています。再検索させることなく、ユーザが地図をズームとパン(拡大縮小 & 移動)するのに合わせてデータを更新し、ユーザが自由にデータを閲覧できるようにしてます。[参考地図] コードはGithubで公開されています。 1) データ構造 画面上に全てのアノテーションを表示するのでなく、ユーザが画面を操作したときに適宜表示するため、ある一定の範囲を効率よく検索で絞り込めるかどうかが重要。ポイントでインデックスするのでなく、四分木を利用してエリアでインデックスすると検索範囲を減らすことができる。 2

  • 1