Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Computational geometry 放置在圆中的多边形的面积_Computational Geometry - Fatal编程技术网

Computational geometry 放置在圆中的多边形的面积

Computational geometry 放置在圆中的多边形的面积,computational-geometry,Computational Geometry,平面上的给定多边形和圆心为p(0,0)且半径为R的圆。 如何计算放置在圆中的多边形的面积? 不久前,我试图解决非常类似的问题,今天我再次遇到这个问题。。。就是想不出方法。我在考虑一些分而治之的解决方案,它运行在O(n logn)中,其中n是形成多边形的垂直线的数量,但没有任何成功。。。谢谢你的提示。 这不是家庭作业,我们有假期:) 克里斯我想写一个答案,但因为我在iPhone上,我给你画了一个: 基本上,它可以归结为一组三角形和圆段。您知道如何计算这些面积,因此只需将要包含的面积相加即可(见图

平面上的给定多边形和圆心为p(0,0)且半径为R的圆。 如何计算放置在圆中的多边形的面积? 不久前,我试图解决非常类似的问题,今天我再次遇到这个问题。。。就是想不出方法。我在考虑一些分而治之的解决方案,它运行在O(n logn)中,其中n是形成多边形的垂直线的数量,但没有任何成功。。。谢谢你的提示。 这不是家庭作业,我们有假期:)


克里斯

我想写一个答案,但因为我在iPhone上,我给你画了一个:


基本上,它可以归结为一组三角形和圆段。您知道如何计算这些面积,因此只需将要包含的面积相加即可(见图)。

圆圈有什么关系?我想象你可以把多边形分解成三角形,然后计算每个三角形的面积。没想到!但也许是个愚蠢的问题。。。。但是如何计算每个三角形的值呢?对不起,我的问题很蹩脚,但我的几何知识很差。三角形面积的公式是
(宽*高)/2
。所以我认为你需要在三角形中选择任意两点并计算它们之间的距离。这会给你宽度。然后可以使用第三个顶点计算高度。或者你可以使用这里描述的许多不同算法中的任何一种:所谓“放置在圆内”,你是什么意思?你的意思是说多边形是规则的,并且被圆所包围?或者你的意思是圆和多边形以某种方式重叠,你想计算出位于圆边界内的多边形的面积吗?那幅画,让人有点难看。正如孔子曾经说过的,“你的脸也一样。”他可能会说我承认,我引用的伪造和我的画一样伪劣。这次你赢了,阿特雷!