求两个圆相交的面积S(100)

  • 主题发起人 zxy666666
  • 开始时间
Z

zxy666666

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好!求两个圆相交的面积S。已知:两个圆的半径r1和r2(r1<>r2)及两圆圆心点d的距离。r1=3和r2=4是不变的.当改变d的时候,计算两圆相交面积。要怎么写这个函数?关键是不知道怎么计算相交的面积,谢谢大家!
 
拿支笔来画两个交叉的圆,连线两圆的交叉点,将交叉部分分成两个小部分S1,S2,计算这两个小部分的面积。其中S1或S2=扇形面积 减 三角形面积;连线两个圆心点可以求出扇形面积和三角形面积。
 
写代码就不需要读初中了么?
 
我数学是最差的。再说过了十来年了都还给老师了。请大家帮忙指导,谢谢!
 
解决这个问题有两个办法:一、初中/高中的解法:1、简化问题  设大圆的半径为R1,位置在X=0,Y=0点,公式为x&sup2;+y&sup2;=R1&sup2;;  设小圆的半径为R2,位置在x=d,y=0点,公式为(x-d)&sup2;+y&sup2;=R2&sup2;。2、求两圆相交点的xy值。  x&sup2;-R1&sup2;=(x-d)&sup2;-R2&sup2;,求得x1=(R1&sup2;-R2&sup2;+d&sup2;)/2d,y1=sqrt(R1&sup2;-((R1&sup2;-R2&sup2;+d&sup2;)/2d)&sup2;),y2=-sqrt(R1&sup2;-((R1&sup2;-R2&sup2;+d&sup2;)/2d)&sup2;)。3、对于大圆来说,扇形的角度为2*arccos(x1/R1),则面积为arccos(x1/R1)*R1&sup2;。  三角形的面积为:x1*y1。  则阴影的右半边的面积为:arccos(x1/R1)*R1&sup2;-x1*y1。4、对于小圆来说,扇形的角度为2*arccos((d-x1)/R2),则面积为arccos((d-x1)/R2)*R2&sup2;。  三角形的面积为:(d-x1)*y1。  则阴影的左半边的面积为:arccos(x1/R2)*R2&sup2;-(d-x1)*y1。5、最后,阴影总面积为:arccos(x1/R1)*R1&sup2;-x1*y1+arccos(x1/R2)*R2&sup2;-(d-x1)*y1。二、大学微积分解法:1、同上。2、同上。3、求y=sqrt(R1&sup2;-x&sup2;)在0到(R1&sup2;-R2&sup2;+d&sup2;)/2d的定积分。4、求y=sqrt(R2&sup2;-(x-d)&sup2;)在(R1&sup2;-R2&sup2;+d&sup2;)/2d到d的定积分。5、将上面的结果相加就可以了,结果应该和第一个方法一样。
 
这个简单,通过边长算夹角,再得到扇形面积,继而扇形面积 - 三角形面积得到一边的弓形面积,同样方法得到另一半弓形面积,OK,初中题还是小学题,忘了
 
用微积分直接就搞定了。
 
唉,纯粹的数学问题,全忘了
 
谢谢各位!
 

Similar threads

S
回复
0
查看
949
SUNSTONE的Delphi笔记
S
S
回复
0
查看
770
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
顶部