1

多角形と、多角形の両側に端点を持つ線分があります。ポリゴンを 2 つのポリゴンに分割する最も簡単な方法は何ですか。(私は jts パッケージを使用しています)。

ポリゴナイザーを使用してみましたが、機能していないように見えるため、正しく使用しているとは思いません。

ありがとう、

4

2 に答える 2

4

遅い答えですが、おそらく誰かがこれも知りたいと思っています。

次のジオメトリがあると仮定します:
GEOMETRYCOLLECTION (POLYGON ((100 150, 100 340, 350 340, 350 150, 100 150)), LINESTRING (220 340, 220 150))

このジオメトリ コレクションをライン マージしてみると、結果は次のようになります

ここから単項結合を実行すると、結果は次のとおり
です。 150))


最後に、ポリゴナイザーを使用して 2 つのポリゴンを取得できます。150))))

したがって、ポリゴナイザーを機能させるには、ポリゴン全体ではなく、単一のラインストリングを入力として与える必要があります。

JTS テストビルダーでテスト済み

于 2011-06-07T09:32:39.583 に答える
1

ライン セグメントを非常に大きなポリゴンの一部にして、2 つのポリゴンを交差させることで、同様のことを行いました。ポリゴンの境界の外に出るまでセグメントの各端にセグメントを追加して大きなポリゴンを作成し、元のポリゴンの境界を超える 90 度で 2 つのセグメントを追加し、最後の 2 つのセグメントを元のポリゴンを元のセグメントに沿って分割し、元のポリゴンの残りの部分を囲む大きなポリゴンを作成するための最終セグメント。それはかなり痛いですが、うまくいきます。ジム

于 2011-04-21T16:13:20.647 に答える