2017-11-10 9 views
1

2つのレイヤーがポイントレイヤーであり、もう1つがポリゴンレイヤーです.WSサービスを使用してGeoServerのマップ上に2つのレイヤー表示があります。私はポリゴンの中にいくつかのポイントを描画し、その他はマップのみに描画します。フィルタークエリーを適用すると不要な結果が返るBBOXベースのポリゴンエリア内

ここでは、これらが特定のポリゴンエリアで使用可能なポイントフィーチャの詳細を取得したいと思います。そのために、EPSG:4326でGeoserverへのWFSリクエストを使用してポリゴンフィーチャのBBOXでCQLフィルタクエリを適用しました。

フィルタクエリ:

http://localhost:8080/geoserver/cite/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=cite:filterquertyTest&CQL_FILTER=BBOX(the_geom%2C70.136719%2C10.833306%2C87.890625%2C32.842674)&SRS=EPSG%3A4326&WIDTH=950&HEIGHT=400&maxFeatures=50&outputFormat=application%2Fjson 

しかし、ここで私はまた、機能の詳細などgeoserverで返す利用可能ポリゴンの外側に近いポイントのような問題を取得しています。

imageを参照してください。返品合計額4個、内側は多角形レイヤー3点があります。

enter image description here

だから、正確にポイントを取得するために、任意の解決策は、ポリゴンエリア内で利用可能です。

ありがとうございます。

答えて

1

GeoServerは、2つのコーナー70.136719,10.833306 87.890625,32.842674によって定義されたボックス内にあるすべてのポイントが、あなたが求めたものを正確に提供しています。

ポリゴンの内側にある3点だけを使用する場合は、withinフィルタを使用する必要があります。

&CQL_FILTER=within(the_geom,POLYGON((70.136719 10.833306,....))) 
関連する問題