中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么求兩個圓的交點坐標

發布時間:2021-06-16 16:31:50 來源:億速云 閱讀:652 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關Python中怎么求兩個圓的交點坐標,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

計算兩個圓的交點

代碼如下:

# -*- coding: utf-8 -*-
import math
import numpy as np
def 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=10
P2=np.array([5,0])
R2=5
C=insec(P1,R1,P2,R2)
C1=C[0]
C2=C[1]

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

以上就是Python中怎么求兩個圓的交點坐標,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

酉阳| 博乐市| 隆德县| 浠水县| 喜德县| 银川市| 庆城县| 无极县| 白河县| 肥城市| 鹤壁市| 庆安县| 如东县| 临清市| 武邑县| 平利县| 建宁县| 陕西省| 玉田县| 凌云县| 雅安市| 张北县| 苏尼特右旗| 土默特左旗| 巩留县| 白朗县| 综艺| 平定县| 闽侯县| 镇赉县| 三台县| 陕西省| 四川省| 宁远县| 文昌市| 漯河市| 正定县| 南充市| 舒兰市| 张掖市| 文成县|