有两个向量,求夹角
根据几何学,我们可以通过三角函数来换算,但是问题在于,需要知道他和x轴的夹角,因为空间参考系变换,以及大于等影响,比较复杂。
使用线性代数在三维中的应用即旋转矩阵即可解决。
假如向量A(a.x,a.y) 还有向量B(b.x,b.y) 他们的夹角为α,
首先旋转矩阵如下:
cos α sin α cos α -sin α
-sin α cos α, -sin α cos α
行向量对应的矩阵: 列向量对应的矩阵
变换后的向量b表示如下:
A.x cosα - A.y sinα = B.x //
A.x sinα + A.y cosα = B.y
通过解方程: 可以算出 sin α = (A.x cos α - B.x) / A.y; 当然也等于 (B.y - A.y cos α) / A.x;
而cos α = dot(A,B); //注意A和B需要归一化
浙公网安备 33010602011771号