如图所示,我们要计算任意两个向量之间的夹角。

(图中的坐标数字是估计值,随手给定)

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)

结果为

AB和CD的夹角

55

AB和EF的夹角

139

AB和PQ的夹角

52

CD和EF的夹角

84

CD和PQ的夹角

107

EF和PQ的夹角

169

以上这篇Python 计算任意两向量之间的夹角方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

python求角度公式_Python 计算任意两向量之间的夹角方法相关推荐

  1. 两个向量之间的夹角公式_Python 计算任意两向量之间的夹角方法

    如图所示,我们要计算任意两个向量之间的夹角. (图中的坐标数字是估计值,随手给定) python代码如下 import math AB = [1,-3,5,-1] CD = [4,1,4.5,4.5] ...

  2. Python 计算任意两向量之间的夹角

    如图所示,我们要计算任意两个向量之间的夹角. (图中的坐标数字是估计值,随手给定) python代码如下 import math AB = [1,-3,5,-1] CD = [4,1,4.5,4.5] ...

  3. T-SQL 2 Tips: 1.计算任意两日期之间的周一到周日分别各有几个! 2.根据出生日期计算精确年龄!...

    这两个小技巧,不写不知道,一写吓一跳! 都是看似简单,实际做起来就懵,得仔细想一想,才能写对! 凡是有日期运算的程序都要细心哦! 先说第二个: 2.根据出生日期精确计算年龄!   所谓计算精确年龄就是 ...

  4. Java 计算任意两天之间相隔的天数

    在学习了Java中的Date类相关的方法之后,我试着自己写了小程序可以计算任意两天之间相隔的天数,挺好用的. 设计思路: 运用Date类中提供的getTime()方法,获取输入的日期与1990-01- ...

  5. 计算任意两个数之间1出现的次数的思维过程

    1.我刚开始没有什么思路,仅仅是想到了将一个数字拆开成单个的数字,然后求一出现的次数,结果发现很难实现 2.没有思路,只能使用穷举法 穷举法c语言代码: #include <iostream&g ...

  6. 求解三维空间中两向量之间的夹角

    问题描述:已知三维空间中的三个点P1P_1P1​,P2P_2P2​和P3P_3P3​,求向量P1P2→\overrightarrow{P_1P_2}P1​P2​​和P1P3→\overrightarr ...

  7. python求阶乘之和_python计算阶乘前n项和

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 知道公式后就很简单了,利用for循环,第几行i+1就等于几,当然python中是 ...

  8. python求概率密度函数_python 计算概率密度、累计分布、逆函数的例子

    计算概率分布的相关参数时,一般使用 scipy 包,常用的函数包括以下几个: pdf:连续随机分布的概率密度函数 pmf:离散随机分布的概率密度函数 cdf:累计分布函数 百分位函数(累计分布函数的逆 ...

  9. python求导函数公式_python怎么实现函数求导

    python实现函数求导的方法是:1.利用sympy库中的symbols方法传入x和y变量:2.利用sympy库中的diff函数传入需要求导的函数即可返回求导之后的结果. python利用sympy库 ...

  10. python牛顿迭代公式_python计算牛顿迭代多项式实例分析

    本文实例讲述了python计算牛顿迭代多项式的方法.分享给大家供大家参考.具体实现方法如下: ''' p = evalPoly(a,xData,x). Evaluates Newton's polyn ...

最新文章

  1. ZOJ 3735 dp
  2. python网上课程-python完整课程
  3. WPF DataGrid、ListView 简单绑定
  4. 【知识星球】卷积核和感受野可动态分配的分组卷积
  5. js setTimeout 使用方法
  6. C#:解决WCF中服务引用 自动生成代码不全的问题。
  7. 试了试Docker桌面应用自带的K8s集群,一个字“简单”
  8. 125KHz 100cm ID 读卡电路_摄影人最好用的读卡器推荐
  9. php的数组操作,PHP的数组操作
  10. Logstash实践: 分布式系统的日志监控
  11. abaqus生成adams柔性体_Abaqus和STAR-CCM+流固耦合
  12. java 焦点转移_将焦点移至键Enter上的下一个控件
  13. 【LeetCode】205 Isomorphic Strings (c++实现)
  14. 【转】为什么火线有电压,零线没有电压呢?
  15. 从无到有构建计算机网络
  16. 时光轴一之listView实现时光轴效果
  17. 【 FlutterUnit 食用指南】 开源篇
  18. ​PDF如何转换成Word文档?分享两种好用的转换方法
  19. [导入]梦幻快车(DreamMail) v4.0 正式版 ?
  20. 【元数据】饿了么元数据管理实践之路

热门文章

  1. 速读原著-TCP/IP(端口映射器)
  2. java在线编译器手机版_java编译器app_java编译器手机版_java编程-多特软件站安卓网...
  3. python 大智慧自定义数据_大智慧扩展数据、自定义数据
  4. 江西省吉安市永丰县市政花园(市政服务大楼[厅]) 工程质量及违法违规建筑容积率问题2011年11月简述报告
  5. 思科模拟器Cisco Packet Tracer的汉化教程
  6. (网络编程)SOCKET应用实例
  7. VB程序与win8/ win10系统不兼容问题汇总
  8. 数据结构1800题-错题集-第四章
  9. 硬核桌面美化,让Windows电脑像Mac一样充满高级感!
  10. WareZ盗版组织揭密-服气了-纯技术牛人