求两个向量的夹角_数量积和向量积的公式

求两个向量的夹角_数量积和向量积的公式如图所示,我们要计算任意两个向量之间的夹角。(图中的坐标数字是估计值,随手给定)python代码如下importmathAB=[1,-3,5,-1]CD=[4,1,4.5,4.5]EF=[2,5,-2,6]PQ=[-3,-4,1,-6]defangle(v1,v2):dx1=v1[2]-v1[0]dy1=v1[3]-v1[1]dx2=v2[2]-v2[…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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

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

求两个向量的夹角_数量积和向量积的公式

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 计算任意两向量之间的夹角方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189607.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月12日 上午9:18
下一篇 2026年3月12日 上午9:22


相关推荐

  • mysql数据库同步工具_mysql同步工具_mysql数据库同步

    mysql数据库同步工具_mysql同步工具_mysql数据库同步 下载网站:www.SyncNavigator.CN  客服QQ1793040———————————————————-  关于HKROnlineSyncNavigator注册机价格的问题HKROnlineSyncNavigator 8.4.1企业版数据同步软件自2009年第一个版…

    2022年6月28日
    32
  • Toast弹窗_androidshowtoast

    Toast弹窗_androidshowtoast安卓toast弹窗toast弹窗是安卓的一个常用控件,它可以便利的获取上下文对象的地方,进行弹窗提示。本文不追究其中原理,只研究方法。toast的几个常用方法有四种。分别是普通弹窗,改变位置的弹窗,图片弹窗,自定义弹窗。1,普通toast弹窗Toast.makeText()是一个有参函数,参数值有三个。第一个参数是当前的上下文控件,getApplicationContext()获取上下文对象或this获取当前对象。第二个参数是你自己要显示的文字。第三个参数是显示的时间长短。有两种形态的值

    2026年3月11日
    8
  • Qt 5.14.1 安装详解「建议收藏」

    Qt 5.14.1 安装详解「建议收藏」1、打开安装包qt-opensource-windows-x86-5.14.1.exe,next2、这里需要登录(点击这里注册:https://www.qt.io/)3、选择同意,下一步,下一步4、选择安装目录(需要大约3.2G的空间大小)5、选择组件(非常重要)6、同意许可协议,点击下一步,安装…

    2022年5月13日
    42
  • idea正版在线激活码破解方法「建议收藏」

    idea正版在线激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    147
  • 逻辑漏洞实验

    逻辑漏洞实验逻辑漏洞实验…

    2022年6月11日
    36
  • 关于我转生变成史莱姆这档事_kicker.de

    关于我转生变成史莱姆这档事_kicker.de1  请问什么所kworker进程 清理旧版本的软件缓存:  sudoapt-getautoclean这个进程是干什么的? 我的机器刚装11.04没次卡的时候top一下就发现kworker这个进程占用CPU很大,基本上都能到75%左右youmaytrytodisableallpowersavingcon

    2026年3月10日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号