国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python求兩個圓的交點坐標或三個圓的交點坐標方法

2020-02-15 23:34:13
字體:
來源:轉載
供稿:網友

計算兩個圓的交點

代碼如下:

# -*- coding: utf-8 -*-import mathimport numpy as npdef insec(p1,r1,p2,r2): x = p1[0] y = p1[1] R = r1 a = p2[0] b = p2[1] S = r2 d = math.sqrt((abs(a-x))**2 + (abs(b-y))**2) if d > (R+S) or d < (abs(R-S)):  print ("Two circles have no intersection")  return  elif d == 0 and R==S :  print ("Two circles have same center!")  return else:  A = (R**2 - S**2 + d**2) / (2 * d)  h = math.sqrt(R**2 - A**2)  x2 = x + A * (a-x)/d  y2 = y + A * (b-y)/d  x3 = round(x2 - h * (b - y) / d,2)  y3 = round(y2 + h * (a - x) / d,2)  x4 = round(x2 + h * (b - y) / d,2)  y4 = round(y2 - h * (a - x) / d,2)  print (x3, y3)  print (x4, y4)  c1=np.array([x3, y3])  c2=np.array([x4, y4])  return c1,c2 P1=np.array([-5,0])R1=10P2=np.array([5,0])R2=5C=insec(P1,R1,P2,R2)C1=C[0]C2=C[1]

計算三個圓的交點,首先要保證三個圓必須有共同的交點,然后調用兩次函數,再求交集,即可算出三個圓的交點。

以上這篇Python求兩個圓的交點坐標或三個圓的交點坐標方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 冀州市| 广饶县| 阿坝县| 保山市| 通山县| 沁阳市| 兴化市| 青川县| 内乡县| 高阳县| 广丰县| 静安区| 丰城市| 通山县| 鸡东县| 大洼县| 北川| 宜良县| 邛崃市| 云梦县| 砀山县| 同仁县| 淳安县| 西和县| 高碑店市| 娄底市| 河北区| 凤城市| 尉氏县| 龙门县| 台东市| 上杭县| 桂东县| 梁平县| 莱西市| 淄博市| 滨州市| 磐安县| 呼图壁县| 许昌市| 崇州市|