- 前言
- 推导坐标旋转
- 旋转前后某一点的坐标变换
- python实践:计算x轴坐标变换对向量夹角的影响
- 参考链接
距离上一篇博客已经好长时间没有写啦,前段时间也没有整天在摸鱼,可能学习的知识太过零散,没法总结。
最近三天猛接触向量,终于把线性代数的一些知识搞明白了,用python进行了验证。主要总结两个点,一个是推导坐标旋转,二是旋转前后某一点的坐标变换。
之前也写过一篇关于向量的:python 求点和点之间的距离;向量之间的余弦距离、欧式距离;点到向量的距离
这篇文章写得太烂了,大家还是不要看了
import numpy as np
import math
def get_angle(v1, v2):
# 余弦距离计算角度[0-180)
if np.count_nonzero(v1) == 0 or np.nonzero(v2) == 0:
return np.nan
angle = np.dot(v1, v2) / (np.sqrt(np.sum(v1 * v1)) * np.sqrt(np.sum(v2 * v2)))
angle = np.arccos(angle) / np.pi * 180
return angle
a = np.array([2, 1])
b = np.array([2, -3])
c = np.array([-2, 2])
print(get_angle(a, b))
print(get_angle(c, b))
ang = 30
ang = ang / 180 * np.pi
trans = np.array([[math.cos(ang), 0],
[math.sin(ang), 1]])
ta = np.dot(trans, a)
tb = np.dot(trans, b)
tc = np.dot(trans, c)
print(get_angle(ta, tb))
print(get_angle(tc, tb))
参考链接
利用向量推导坐标旋转公式(方案一)
-UP主汉语配音-【线性代数的本质】合集-转载于3Blue1Brown官方双语】



