给定一个任意多边形,其顶点以顺时针或逆时针方式存储(在图中表示为黑色矩形),我需要能够从该多边形中减去任意数量的圆(在图中为红色)。移除一个圆可能会将多边形分成两个单独的多边形(如图中第二行所示)。
我不确定该从哪里开始。 示例 http://www.freeimagehosting.net/uploads/89a0276d9d.jpg
我不确定该从哪里开始。 示例 http://www.freeimagehosting.net/uploads/89a0276d9d.jpg
以下是一款免费的多边形裁剪库(使用 Delphi 和 C++ 编写),可以实现您所需的功能: http://sourceforge.net/projects/polyclipping/