Algorithm 多边形与圆的相交面积

Algorithm 多边形与圆的相交面积,algorithm,computational-geometry,Algorithm,Computational Geometry,我想计算圆和多边形的相交面积,而不是自交。有什么好的广义算法吗 注: 我尝试的内容:首先,我尝试用光线投射算法来解决这个问题,在这里我将找到圆中的点,然后确定区域。但对我来说,情况变得越来越困难,测试用例也越来越复杂 输入规格:圆心、y和圆半径。多边形{x1,y1},{x2,y2},{x3,y3}的顶点 更新:我越觉得困惑。真的可以计算吗?有两个步骤。首先,请注意,这个问题很容易解决,因为没有陷阱。其次,请注意,可以将任意N个多边形分解为N个三角形。这使情况变得容易得多 任何圆都可以用公式x^2

我想计算圆和多边形的相交面积,而不是自交。有什么好的广义算法吗

注: 我尝试的内容:首先,我尝试用光线投射算法来解决这个问题,在这里我将找到圆中的点,然后确定区域。但对我来说,情况变得越来越困难,测试用例也越来越复杂

输入规格:圆心、y和圆半径。多边形{x1,y1},{x2,y2},{x3,y3}的顶点


更新:我越觉得困惑。真的可以计算吗?

有两个步骤。首先,请注意,这个问题很容易解决,因为没有陷阱。其次,请注意,可以将任意N个多边形分解为N个三角形。这使情况变得容易得多

任何圆都可以用公式x^2+y^2=r^2来描述。因此,可以通过积分得到直线任何区域到轴的面积


我明天再填,我现在出去

您所指的页面使用JavaScript。你的问题是如何把代码转换成C++?如果你能把光线投射到一个圆中,答案是微不足道的。你能做到吗?你给出的链接提供了一个不同问题的解决方案,决定是否有交叉路口。这就是你实际搜索的还是你想计算圆和多边形重叠的区域?谢谢@UlrichEckhardt,实际上我在谷歌搜索多边形和圆相交区域的解决方案,找到了这个页面。现在我已经更新了帖子。再次感谢clearfy me…我更新了问题陈述@ChristianHackland酒精让他第二天忘记填写:P@FutureCake的确如此。