0

PostGIS テーブルに住所の緯度/経度情報を格納するシステムに取り組んでいます。緯度/経度をジオメトリ データ型に格納するには、ST_GeometryFromText 関数を使用しています。

たとえば、次の関数呼び出しは、指定された緯度/経度の位置に対する幾何学的な値を取得します。

 myPointGeo =  ST_GeometryFromText('POINT(40.758871 -73.985114));

同様に、次のように Polygon を幾何学的表現に変換します。

myPolygonGeo =  ST_GeometryFromText('POLYGON ((40.7566484549725 -73.9878561496734, 40.7556894646734 -73.9853026866913, 40.7545841705587 -73.9860537052154, 40.7548036054111 -73.9881458282471, 40.7559820394514 -73.9887895584106, 40.7566484549725 -73.9878561496734 ))')

上記の緯度/経度の位置がこのポリゴン内にあるかどうかを調べたいです。このために、ST_Within 関数を使用しています。しかし、'myPointGeo' は実際には Polygon 内に存在しますが、ST_Within は false を返しています。私はこの方法で ST_Within を使用しています:

 St_Within(myPointGeo,myPolygonGeo)

ここで何が間違っていますか?この目的のために他の関数を使用する必要がありますか?

4

1 に答える 1

0

クエリは正しいようです。falseポイントがポリゴン内にないため、返されます。2 つのジオメトリは互いに素です。

多角形の点

于 2013-02-16T23:02:54.160 に答える