Python计算任意两向量之间的夹角方法-创新互联
如图所示,我们要计算任意两个向量之间的夹角。
我们提供的服务有:网站制作、成都做网站、微信公众号开发、网站优化、网站认证、石河子ssl等。为近千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的石河子网站制作公司(图中的坐标数字是估计值,随手给定)
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)
名称栏目:Python计算任意两向量之间的夹角方法-创新互联
文章分享:http://myzitong.com/article/dishsc.html