编程求两个圆相交部分面积编程:知道两个圆的半径和圆心(两个圆大小不一样),求两个圆的相交部分的面积,说一下编程思路,
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 12:18:40
xSN@N+$p`9"'5B
%B@@E(%BM+@1ПٱS~ݵ[x3osB-WvKoshO^?{S&ag-ۈB궩[OcyDө'2$Wlu[pXyDVTwbR65+U"-5fKX/)]"R'͞"էEI4RxsQ$8J}qZ^0iz dFZŲ9$e$iFQxg|ka'o΄
Z^Pʂ~sN&{Q[*+"mBԁst0fb]j5*E6EG}i~e.sM<'3&2"YCoC/Ilnl2|ܖn|s
jV_
编程求两个圆相交部分面积编程:知道两个圆的半径和圆心(两个圆大小不一样),求两个圆的相交部分的面积,说一下编程思路,
编程求两个圆相交部分面积
编程:知道两个圆的半径和圆心(两个圆大小不一样),求两个圆的相交部分的面积,说一下编程思路,
编程求两个圆相交部分面积编程:知道两个圆的半径和圆心(两个圆大小不一样),求两个圆的相交部分的面积,说一下编程思路,
boolean isIntersecting(Circle c){
return Math.sqrt((_x-c._x)*(_x-c._x)+(_y-c._y)*(_y-c._y))_r+c._r){
return 0;
}
alpha=Math.acos((d*d+_r*_r-c._r*c._r)/(2*d*_r));//余弦定理取得相交弧所对本圆的圆心角
area=alpha*_r*_r;//本圆扇形面积
alpha=Math.acos((d*d+c._r*c._r-_r*_r)/(2*d*c._r));//余弦定理取得相交弧所对另一圆的圆心角
area+=alpha*c._r*c._r;//另一圆的扇形面积
double s=(d+_r+c._r)/2;//海伦公式之s
area-=Math.sqrt(s*(s-d)*(s-_r)*(s-c._r))*2;//两扇形面积减去两三角形面积即为交集
return area;
}