婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > python 求兩個向量的順時針夾角操作

python 求兩個向量的順時針夾角操作

熱門標簽:qt百度地圖標注 螳螂科技外呼系統怎么用 正安縣地圖標注app 電銷機器人系統廠家鄭州 遼寧智能外呼系統需要多少錢 舉辦過冬奧會的城市地圖標注 400電話申請資格 地圖地圖標注有嘆號 阿里電話機器人對話

以上述圖片舉例,要求 相對 的順時針夾角。注意:這里使用圖像坐標系

1 定義求順時針角度的函數

import numpy as np
def 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 求 , 然后求夾角

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

補充:求2個向量順逆時針(最小角度)旋轉角度 Python

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

正常求2個向量夾角用內積公式就可以計算,然而求得的結果不包含方向信息。

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

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

根據定義可以通過向量的坐標計算外積

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

所以等式兩邊的標量相等可以求夾角rho。

rho 是帶正負號的和旋轉方向有關,但是范圍在 -90 ~ 90度。

可以通過rho正負號,結合向量的點乘重新計算帶方向的夾角。

這里面順時針旋轉為負,逆時針旋轉為正。

def GetClockAngle(v1, v2):
 # 2個向量模的乘積
 TheNorm = np.linalg.norm(v1)*np.linalg.norm(v2)
 # 叉乘
 rho = np.rad2deg(np.arcsin(np.cross(v1, v2)/TheNorm))
 # 點乘
 theta = np.rad2deg(np.arccos(np.dot(v1,v2)/TheNorm))
 if rho  0:
  return - theta
 else:
  return theta
a = [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))
'''
結果
(-45.00000000000001, -90.0, -135.0, 180.0, 135.0, 90.0, 45.00000000000001)
'''

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • Python 計算任意兩向量之間的夾角方法
  • Python 求向量的余弦值操作
  • 在python Numpy中求向量和矩陣的范數實例

標簽:合肥 信陽 隨州 淘寶好評回訪 興安盟 昭通 濟源 阜新

巨人網絡通訊聲明:本文標題《python 求兩個向量的順時針夾角操作》,本文關鍵詞  python,求,兩個,向量,的,順時針,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python 求兩個向量的順時針夾角操作》相關的同類信息!
  • 本頁收集關于python 求兩個向量的順時針夾角操作的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 大名县| 大新县| 兖州市| 璧山县| 海伦市| 阿勒泰市| 台中县| 光山县| 阜新| 衢州市| 高阳县| 南岸区| 仁化县| 峨眉山市| 台前县| 九台市| 平山县| 慈利县| 巴林左旗| 汨罗市| 汾阳市| 桃园市| 会理县| 屏东县| 青铜峡市| 汶上县| 息烽县| 鄂托克旗| 读书| 平和县| 安西县| 蒙阴县| 自治县| 海宁市| 孝感市| 温宿县| 镇坪县| 潮州市| 咸宁市| 长治市| 阿勒泰市|