问题描述
我最近碰到一个问题,我有四个圈(中点和半径),不得不计算这些圈的结合区域。
I recently came across a problem where I had four circles (midpoints and radius) and had to calculate the area of the union of these circles.
示例图片:
有关两界是很容易的,
我可以只计算每个界区不是三角形内的分数,然后计算此三角形的面积。
I can just calculate the fraction of the each circles area that is not within the triangles and then calculate the area of the triangles.
但有一个聪明的算法,我可以用的时候有两个以上的圈子?
But is there a clever algorithm I can use when there is more than two circles?
推荐答案
查找的外周圈的所有路口(如B,D,F,H下面的图上)。与相应的圆的中心将其连接在一起,以形成一个多边形。圆的工会的面积是多边形+通过连续的交叉点,并在它们之间的圆心确定的圆形切片的区域的面积。你还需要考虑任何漏洞。
Find all circle intersections on the outer perimeter (e.g. B,D,F,H on the following diagram). Connect them together with the centres of the corresponding circles to form a polygon. The area of the union of the circles is the area of the polygon + the area of the circle slices defined by consecutive intersection points and the circle center in between them. You'll need to also account for any holes.
这篇关于重叠的圆圈联合区的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!