平面上有两个圆相交,求两个圆相交部分的面积
生活随笔
收集整理的這篇文章主要介紹了
平面上有两个圆相交,求两个圆相交部分的面积
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
平面上有兩個圓相交,求兩個圓相交部分的面積
又學習了一遍算法,感觸頗深,也對算法有了更進一步的認識,記錄一下這次的學習,希望能幫到有需要的人。
輸入:六個參數:第一個圓的圓心坐標,半徑,第二個圓的圓心坐標,半徑。
輸出:返回相交部分的面積,若不相交,則返回0,并提示兩圓無相交。
分析:平面上有兩個圓相交,求兩個圓相交部分的面積,如下圖所示。
首先,需要判斷兩個圓是否相交,若不相交,則返回0,若相交,則要求出相交部分的面積,可以用兩個扇形的面積減去四邊形的面積,其中,兩個扇形分別為兩個圓心與兩個圓相交點所組成的扇形,四邊形則是兩個圓心與相交點所構成的四邊形。需要注意的是,這里的四邊形不一定為凸四邊形,所以這里的四邊形面積可以利用海倫公式來進行計算,其次,這里扇形的圓心角不一定為銳角,所以,在計算扇形面積的時候,可以利用余弦定理來進行計算。
其中,海倫公式為:
,其中
,,a、b、c分別為平面內三角形三邊邊長。余弦定理為:
,其中各個字母表示如下圖所示:
程序流程圖如下:
總結
以上是生活随笔為你收集整理的平面上有两个圆相交,求两个圆相交部分的面积的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二叉树遍历(附Java实现代码)
- 下一篇: 格雷码问题:输出当输入为n时的格雷码