python 实现二维向量旋转

本文介绍了如何在Python中将一个起点在原点(-5,-8)的向量旋转到基向量(0,2)的方向。通过计算两向量夹角、判断旋转角大小、构建旋转矩阵,最终计算出新向量的坐标。" 119515972,10737809,Ansible实战:主机清单、YAML语法与playbook详解,"['运维', 'Ansible']
摘要由CSDN通过智能技术生成

问题描述

现有一起点在原点 (0,0) 处的向量 (-5,-8)。选择一个基向量 (此基向量可以选任意方向、大小)。要将现有向量旋转至基向量方向,该怎么做?

红色:目标向量,绿色:基向量,灰色箭头表示旋转方向

选定基向量

设定基向量为 (0,2)。则:

# 基向量
v1 = np.asarray((0,2))
v2 = np.asarray((-5,-8))

计算两向量夹角

# 计算方向向量
unit_v1 = v1 / np.linalg.norm(v1)
unit_v2 = v2 / np.linalg.norm(v2)
# 根据点积反推夹角
dot_product = np.dot(unit_v1, unit_v2)
angle = np.arccos
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值