1

2 つのジオメトリの交差中に問題が発生し、操作中の丸めエラーが原因で TopologyException が発生した可能性があります。この修正を読み、両方の入力ジオメトリでを試しましたbuffer(0)が、まだ成功していません。それから私は試しgeo.buffer(1).buffer(-1)てみましたが、うまくいきました。

これらのジオメトリは元のジオメトリと同等ですか?

4

2 に答える 2

5

私は JTS について何も知りませんが、一般的にはそうではありません。

次の 2 つの形状があるとします。

XXX XXX
 XXX XXX
 XXX XXX

私の理解から、buffer(1)on both はおおよそ次のようになります。

XXXXXXXXXXX
XXXXXXXXXXX
XXXXXXXXXXX
XXXXXXXXXXX
XXXXXXXXXXX

buffer(-1)これらの 2 つの形状から 2 つの異なる結果を生成することはできなくなります。

事実上、buffer()操作によって情報が失われるため、別の場所からその情報を再度追加しない限り元に戻すことはできません。

于 2010-03-18T14:09:53.593 に答える
3

これらのジオメトリが同じになるとは思いません。デフォルトのビヘイビア バッファリングでは、元の構成に頂点が追加されますが、同じ頂点が削除されるという保証はありません。

たとえば、非常に小さなバッファ a.buffer(0.00001) を実行してみてください (メートル法の座標の場合は 1/1000 mm)。

PostGIS では、これを行うことでいくつかの問題が修正されます。

于 2010-03-18T14:06:56.363 に答える