计算两个任意形状的并集

Gre*_*g B 8 math geometry boolean-operations

我正在开发一个应用程序,我需要能够组合用户绘制的两个重叠的任意形状.这将是两种形状上的联盟操作.得到的形状将是两个重叠形状的轮廓.

形状以顺时针方式存储为一系列点.

理想情况下,我想要一个算法,它将采用两个Point(x,y)数组,并返回一个结果形状的单个数组.

我一直在阅读关于多边形的布尔运算的维基百科,其中提到了扫描线算法,但是我无法在此与我的目标之间建立联系,唉,我不是数学家.

我正在使用ActionScript 3开发应用程序,但我熟悉C#,Java,我可以通过C和C++来选择.

Mar*_*n B 5

正确实现布尔运算并非易事; 幸运的是,有些库已经实现了这一功能.

你用的是哪种语言?如果是C++,请看CGAL,即计算几何算法库.