欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 計(jì)算任意兩向量之間的夾角方法

 更新時(shí)間:2019年07月05日 14:56:21   作者:Javy Wang  
今天小編就為大家分享一篇Python 計(jì)算任意兩向量之間的夾角方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

如圖所示,我們要計(jì)算任意兩個(gè)向量之間的夾角。

(圖中的坐標(biāo)數(shù)字是估計(jì)值,隨手給定)

python代碼如下

import math 

AB = [1,-3,5,-1]
CD = [4,1,4.5,4.5]
EF = [2,5,-2,6]
PQ = [-3,-4,1,-6]

def angle(v1, v2):
  dx1 = v1[2] - v1[0]
  dy1 = v1[3] - v1[1]
  dx2 = v2[2] - v2[0]
  dy2 = v2[3] - v2[1]
  angle1 = math.atan2(dy1, dx1)
  angle1 = int(angle1 * 180/math.pi)
  # print(angle1)
  angle2 = math.atan2(dy2, dx2)
  angle2 = int(angle2 * 180/math.pi)
  # print(angle2)
  if angle1*angle2 >= 0:
    included_angle = abs(angle1-angle2)
  else:
    included_angle = abs(angle1) + abs(angle2)
    if included_angle > 180:
      included_angle = 360 - included_angle
  return included_angle

ang1 = angle(AB, CD)
print("AB和CD的夾角")
print(ang1)
ang2 = angle(AB, EF)
print("AB和EF的夾角")
print(ang2)
ang3 = angle(AB, PQ)
print("AB和PQ的夾角")
print(ang3)
ang4 = angle(CD, EF)
print("CD和EF的夾角")
print(ang4)
ang5 = angle(CD, PQ)
print("CD和PQ的夾角")
print(ang5)
ang6 = angle(EF, PQ)
print("EF和PQ的夾角")
print(ang6)

結(jié)果為

AB和CD的夾角
55
AB和EF的夾角
139
AB和PQ的夾角
52
CD和EF的夾角
84
CD和PQ的夾角
107
EF和PQ的夾角
169

以上這篇Python 計(jì)算任意兩向量之間的夾角方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論