タグ

geometryに関するyou_gotのブックマーク (5)

  • ここギコ!: GoogleMapsと連動したいなら幾何データ型よりPostGIS

    なんか向こうのコメントに書き込んだのだが、よく判らんが削除されてしまったのでこっちのエントリで取り上げる。 データベース上の位置情報を効率的に検索する方法(PostgreSQL編) -Web屋のネタ帳- たとえばおいしいケーキ屋さんの位置情報がデータベース上にあるとしよう。...GoogleMapsなどである範囲の地図を表示したとして、お店の位置を地図上にマーキングさせたい場合には、その地図の範囲の情報をキーにしてデータベース上の緯度経度を検索する必要がある。 ......... だが、ひとたび ある1点から半径rの円内に該当するデータを検索したい さらにその検索結果を、中心点からの距離でソートしたい といったことになると、とたんに難しくなる。しかし、PostgreSQLにもう5年以上前から実装されている幾何データ型、幾何関数、幾何演算子を使えば、SELECT一発でできることだ。 幾何

  • algorithm - correction - 最近点検索 : 404 Blog Not Found

    2009年04月29日07:45 カテゴリMathアルゴリズム百選 algorithm - correction - 最近点検索 これ、「素直な解答」の方が間違っている。 404 Blog Not Found:algorithm - 最近点検索 ぬじゃらだーさんのコメント このアルゴリズムって点が原点から等距離に分布している場合はまったく働かないですよね。 その通り。その一方で、「近い順にソート」は合っている。しかしこれだとO(n log n)。 TSさんのコメント もとの最近点探索の問題を解くには、点集合Pのボロノイ図データを作っておいて問い合わせに答えるのが正攻法ではないでしょうか これだと確かに高速。点がすべて格子点上にある場合(たとえばビットマップ)、ボロノイ図があらかじめ用意してある場合はO(1)で判定できる。たとえば各格子点にあらかじめどの点が一番近いかを記録しておき、それを読

    algorithm - correction - 最近点検索 : 404 Blog Not Found
  • R-tree Portal - R-trees and variants (in low-dimensional space)

    When most couples contemplate retirement years, they might think of a fully-paid mortgage, endless sunny days of golf and fishing, … Continue reading “How 3 Couples Are Living Out Unique Retirement Dreams” → The challenge of living in a tiny home treehouse is achieving organizational functionality. Finding a way to make every single item in your house earn its keep while maintaining elegance and s

  • algorithm - 最近点検索をkd-treeで : 404 Blog Not Found

    2009年04月30日01:00 カテゴリMathLightweight Languages algorithm - 最近点検索をkd-treeで というわけで、kd-treeによる検索も実装してみました。 はてなブックマーク - ototoiのブックマーク データ数が少ない場合、この全検索が高速。ただデータが多くなってくるとkd-treeがいいと思う。点ならば配列をソートするだけで実現できる。 以下のデモでは、単にkd-treeによる検索だけではなく、kd-tree構築の速度と、総当たりの場合の速度の比較もできるようにしてあります。10,000点ぐらいだと、その差を顕著に感じることが出来るでしょう。100,000点ぐらいあると、感動的なほど差が出ます。それだけあってもkd-treeの方はほぼ1ms以内に検索が終わるのですから(ただしこの場合、デモの実行に合計10秒以上かかるので注意!)。

    algorithm - 最近点検索をkd-treeで : 404 Blog Not Found
    you_got
    you_got 2009/04/30
    さすが 対応が早いですね 脱帽
  • kd-tree Visualization(2) - agwの日記

    先日のエントリにて、kd木を紹介しました。前回はアルゴリズム Cに倣って、要素の追加のみでkd木を構築してみました。 繰り返しになりますが、一般的に要素の追加のみでkd木を構築するとバランスの悪い木となることが知られています。先日のエントリで作成したkd木を可視化したものは以下のようなものでした。 同じく、木構造として可視化したものは以下のようなものでした。 さて、では何故均衡の取れない木が構築されてしまうのでしょう? 座標群の初めの点、1番の点を挿入した直後の状態を可視してみましょう。 この可視と先ほどの木構造としての可視を比較すると不均衡な木が構築される理由がより明らかとなります。木構造の可視にて1番の左側にぶら下がっている2番以下の座標群は、この可視では1番によって空間分割された領域の下側、つまり、y座標値がより小さい側に分布しています。 同様に、木構造にて1番の右側にぶら下がってい

    kd-tree Visualization(2) - agwの日記
  • 1