Java:查找多边形A的区域未与多边形B

时间:2016-10-13 00:55:48

标签: java geometry polygon intersection

我试图创建一个接收两个多边形作为参数的Java方法,并返回第三个多边形,表示多边形A的未与多边形B相交的部分。这里是视觉效果。

https://i.stack.imgur.com/gSAEH.png

多边形A是黑色多边形,多边形B是与多边形A相交的绿色多边形,返回的多边形是多边形A内的蓝色阴影区域。

1 个答案:

答案 0 :(得分:1)

您需要算法或库来对多边形进行布尔运算。您的示例显示凹多边形,因此您可以使用VattiGreiner-Hofmann算法。

我怀疑这些方法的正确实现相当复杂,因此建议选择现成的库,例如,从this page / software(除了{{我没有看到Java支持声明) 3}},但要检查可能性)