我在交叉两个几何图形时遇到问题,可能是由于操作期间的舍入错误导致 TopologyException,然后我阅读了 this fix并在两个输入几何上尝试了 buffer(0)
,但仍然没有成功。然后我尝试了 geo.buffer(1).buffer(-1)
并且成功了。
这些几何图形是否等同于原始几何图形?
最佳答案
我对JTS一无所知,但总的来说这不可能是真的。
假设您有两个形状:
XXX XXX X X XXX XXX XXX
根据我的理解,两者上的 buffer(1)
会导致大致如下:
XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX
现在 buffer(-1)
将无法从这两种形状产生两种不同的结果。
实际上,buffer()
操作会丢失信息,因此如果不从其他地方重新添加该信息,就无法撤消。
关于java - 在 JTS 中,当我执行 geometry.buffer(1).buffer(-1) 时,生成的几何是否与原始几何相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2470135/