2

地元の不動産業者は、自分のリストを表示するGoogleマップを自分のWebサイトに追加したいと考えています。ただし、彼は、すべてのプロパティにマップマーカーを表示するだけでなく、Webサイトの訪問者がマップ上に任意のポリゴンを描画し、ボタンをクリックして、それらの境界内にすべての家を表示できるようにしたいと考えています。

私の理解では、これにはGISのブードゥーが必要になるということです。しかし、PostGISの複雑さを調べ始める前に、これを行うためのより良い方法があるかどうか疑問に思っていますか?このサイトは標準のLAMPスタックで実行されていますが、Python / Nginx/PostgreSQLに移行するように彼を説得したいと思っています。

4

2 に答える 2

4

PostGISに移行する必要はないと思います。

  • 最初の可能性は、クライアントがアドレス(123 fooview street)を介してMLSデータベースからリストを取得することです。そのリストをkmlファイルに更新します
  • Googleマップチュートリアルまたはこのマップツールを使用してポリゴンを描画します
  • このWebサイト(マップ内で提供されるjs)を使用して、ポリゴンでポイントを実行できます(アドレスのいずれかがポリゴンの境界内にある場合は一致します)。私は彼らが複数のアプリケーションでそれをしていると思います。

編集

グーグルマップでポイントインポリゴンを行う別の方法

于 2010-07-21T12:41:47.320 に答える
1

これには、あなたが思うほど多くのGISブードゥーが必要になるとは思いません。私はこれに3つのステップでアプローチします:

  1. リストごとに緯度と経度の座標を生成します。この情報はすでにデータベースにある可能性があります。そうでない場合は、これを行うために利用できる無料のツールがいくつかあります。SQLバックエンドインフラストラクチャに直接リンクするGoogleマップアプリケーションをプログラムしました。これは、必要に応じてアプリケーションでのセットアップを支援します。

  2. GLatLngを使用して、回答者が関心を持っている任意のポイントの座標を返します:http ://code.google.com/apis/maps/documentation/javascript/v2/reference.html#GLatLng

  3. いくつかの計算を使用してポイントの領域を作成し(任意の形状に4つのポイントのみを許可すると簡単になります)、forループを使用して各リストの緯度/経度のペアを領域と比較します。

エリアが大きすぎてすべてのリストを任意のエリアと比較できない場合は、州/郡/市/利用可能なデータに基づいて事前フィルタリングを実行してください。

これがお役に立てば幸いです、-チェイス

于 2010-07-21T03:01:16.877 に答える