2016-05-22 7 views
0

警告ポリゴンを2マイルバッファリングしたいのですが、 と助けてもらえますか?エマ個人が警告のマイル数でリストされている場合、私は試していますSTバッファを使用して(検索のポリゴンのカバレッジを広げるために)、それは正しいと思われますか?それはメーターズ(3218.69)ですか?私は最新のopengeoスイートを使用しています。ポリゴンクエリのポイント上のバッファポリゴン

+0

EMAはポイントですが、トーポリーはポリゴンです.GDOM:EPSG:4326私は今日私が試したものからメートルの代わりにマップ単位を使用しています。 – motopi

答えて

1
SELECT DISTINCT ON (ema.name) 
ST_X(ema.geom),ST_Y(ema.geom),ema."name", torpoly.expire 
FROM ema INNER JOIN torpoly ON ST_Within(ema.geom, ST_BUFFER(torpoly.geom) 
ORDER BY ema."name" 

あなたのオプションは、次のいずれか

  1. 適切にはメートルまたはフィート(UTM、ステートプレーン、等)線形単位を使用する地域の投影座標系を使用します。 geometryタイプのすべての距離計算では、デカルト座標系が使用されます。これはすばやく簡単です。
  2. 距離単位をメートルで表したEPSG:4326(緯度/経度)のオブジェクトの距離計算を行うgeographyタイプを使用します。データ型を変更したくない場合は、geom::geographyキャストを使用して、そのキャストにインデックスを付けることができます。

このタイプの分析では決してST_Within(..、ST_Buffer())を実行しないでください。遅く、不完全です。代わりに、ST_DWithinを使用してください。geometry/geographyのオブジェクトは、バッファのような距離のしきい値内にあります。この関数は、存在する場合、空間GiSTインデックスを使用することができます。

関連する問題