分享
 
 
 

如何计算平面n个圆相交的公共部分的面积

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

原题参考 mmmcd 超超 在这个帖子当中的讨论

http://community.csdn.net/Expert/topic/4075/4075074.xml?temp=.4154627

N个任意圆相交求公共面积的问题

必须注意到如下

一:凸体和凸体相交依然是凸体,多元相交后也是凸体

二:多元相交结果,必然是由圆弧所组成,

三:最终的相交面积为各个子圆弧的弓形面积 + 内部凸多边形的面积

要解决这个问题,要解决下面几个问题:

第一个:圆弧的表达方法

Arc(圆心位置,半径,开始角度和结束角度,P1, P2)

p1,p2是两个交点的位置

交点表达:

P(x, y, c1, c2) : 必然是两个 圆交出来的

第二个: 建立同圆的圆弧相交算法

只有两个圆弧是同一个圆上的时候,才用此算法

算法运算的结果是生成一组圆弧,他们的圆心,半径相同,其他的参数不同

第三个: 任意两圆相交结果的圆弧表达方法

任意两个圆做相交判断,结果有三种:

相 交:得到组成相交结果的两个圆弧

不相交:得到两个空的圆弧

包 含:得到一个空圆弧,一个满圆弧

有了这三个算法,n个圆相交的解决方案如下

第一步:

n个圆两两执行相交计算,把结果用圆弧表示,执行结果是一个N×N的表格

执行次数是n*(n-1)/2, 每次运算填充表的两个位置

第一个圆 第二个 第三个 第四个 ..... 第n个

第一个圆 * arc12 arc13 arc14 ..... arc1n

第二个圆 arc21 * arc23 arc24 ..... arc2n

第三个圆 arc31 arc32 * arc24 ..... arc2n

第四个圆 arc41 arc42 arc23 * arc2n

........ ................................................

第n个圆 arcn1 arcn2 arcn3 arcn4 ..... *

在这个表格当中,每次运算填充的是arcij和arcji两个位置

比如,第3个和第4个圆相交,结果写入arc34和arc43

arc34是相交后的,第三个圆上的圆弧, arc43则是相交后的第四个圆上的圆弧

如果在执行这个运算过程当中

arcij 和 arcji都是空圆弧,那么证明圆i和圆j不相交,全体的交集必然是空,可以停止算法了

arcij 和 arcji一个空,一个满。那么空的圆可以抛弃当作不存在,因为他们之间是包含关系

第二步

对表的每行做同圆的圆弧的相交运算,得到的最终结果依然是多段圆弧

相交的结果,可能是空,但是依然是有效的答案

第三步,串连所有的圆弧

从第二步计算得到的结果当中,随意找到一个不空的圆弧,从中找到任意一个圆弧,开始串连

串连的方法:

总面积S为0, 串连点队列L为空

从表当中选择一个圆,这个圆的表内同圆圆弧相交计算后得到的圆弧数组不空,从这个数组当中任意取得一个圆弧,作为当前圆弧

while(1)

{

把当前圆弧的P1点加入串连顶点队列L当中

计算这个圆弧的弓形面积,加入总面积S当中

if ( 当前圆弧的P2点是顶点队列L的第一个点) {

是跳出循环,结束串连

}

根据P2(x,y,c1,c2)点,找到它和另外一个圆的交点对应的圆弧,并把该圆弧作为当前的圆弧, 继续循环

}

第四步, 计算面积

在执行完成第三步之后, 串连点队列L就是N个圆相交部分的凸多边形的顶点队列,计算它的面积加入到S当中就完成了任务

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有