国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python 求兩個(gè)向量的順時(shí)針夾角操作

瀏覽:37日期:2022-06-26 13:34:52

python 求兩個(gè)向量的順時(shí)針夾角操作

以上述圖片舉例,要求 python 求兩個(gè)向量的順時(shí)針夾角操作 相對(duì) python 求兩個(gè)向量的順時(shí)針夾角操作 的順時(shí)針夾角。注意:這里使用圖像坐標(biāo)系

1 定義求順時(shí)針角度的函數(shù)

import numpy as npdef clockwise_angle(v1, v2): x1,y1 = v1 x2,y2 = v2 dot = x1*x2+y1*y2 det = x1*y2-y1*x2 theta = np.arctan2(det, dot) theta = theta if theta>0 else 2*np.pi+theta return theta

2 求 python 求兩個(gè)向量的順時(shí)針夾角操作 , 然后求夾角 python 求兩個(gè)向量的順時(shí)針夾角操作

v1 = [2-0, 1-0] = [2,1]v2 = [4-0, 5-0] = [4,5]theta = clockwise_angle(v1,v2)print(theta*180/np.pi) # 24.77

python 求兩個(gè)向量的順時(shí)針夾角操作

補(bǔ)充:求2個(gè)向量順逆時(shí)針(最小角度)旋轉(zhuǎn)角度 Python

求向量 a 旋轉(zhuǎn)到向量 b 的順時(shí)針(逆時(shí)針)最小角度。

正常求2個(gè)向量夾角用內(nèi)積公式就可以計(jì)算,然而求得的結(jié)果不包含方向信息。

如果需要方向信息的話需要引入向量的外積來(lái)幫助我們判斷。

python 求兩個(gè)向量的順時(shí)針夾角操作

theta是兩個(gè)向量的夾角,n是垂直與2維平面的方向向量,由右手定則可以判斷方向。

根據(jù)定義可以通過(guò)向量的坐標(biāo)計(jì)算外積

python 求兩個(gè)向量的順時(shí)針夾角操作

這里面由于u,v是二維平面上的向量, u3 v3 都為0。 所以 u叉乘v = (u1v2 - u2v1)*K。

所以等式兩邊的標(biāo)量相等可以求夾角rho。

rho 是帶正負(fù)號(hào)的和旋轉(zhuǎn)方向有關(guān),但是范圍在 -90 ~ 90度。

可以通過(guò)rho正負(fù)號(hào),結(jié)合向量的點(diǎn)乘重新計(jì)算帶方向的夾角。

這里面順時(shí)針旋轉(zhuǎn)為負(fù),逆時(shí)針旋轉(zhuǎn)為正。

def GetClockAngle(v1, v2): # 2個(gè)向量模的乘積 TheNorm = np.linalg.norm(v1)*np.linalg.norm(v2) # 叉乘 rho = np.rad2deg(np.arcsin(np.cross(v1, v2)/TheNorm)) # 點(diǎn)乘 theta = np.rad2deg(np.arccos(np.dot(v1,v2)/TheNorm)) if rho < 0: return - theta else: return thetaa = [0,1]b = [1,0]c = [-1,0]d = [0, -1]e = [-1, -1]f = [1, -1]g = [1, 1]h = [-1, 1]print(GetClockAngle(a,g), GetClockAngle(a,b), GetClockAngle(a,f), GetClockAngle(a,d), GetClockAngle(a,e), GetClockAngle(a,c), GetClockAngle(a,h))’’’結(jié)果(-45.00000000000001, -90.0, -135.0, 180.0, 135.0, 90.0, 45.00000000000001)’’’

python 求兩個(gè)向量的順時(shí)針夾角操作

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 黄平县| 普洱| 聂拉木县| 福安市| 钦州市| 辽阳县| 重庆市| 乌兰县| 台北市| 廉江市| 八宿县| 怀仁县| 镶黄旗| 沙坪坝区| 朔州市| 普陀区| 海门市| 葫芦岛市| 太仆寺旗| 平果县| 嘉鱼县| 衡阳市| 尤溪县| 呼玛县| 普兰店市| 丘北县| 洛宁县| 巴楚县| 穆棱市| 河池市| 石河子市| 湖南省| 新营市| 潼南县| 福贡县| 孟连| 平远县| 石门县| 绥中县| 富民县| 湟源县|