假設有兩個二維向量 a 、 b,求向量a到向量b的角度是多少?
由向量夾角公式:cos=(a.*b)/norm(a)/norm(b)
;
可得弧度:acos(cos)
;
此時得到的弧度並沒有方向,並不知道
是順時針還算逆時針。
逆時針可以想到向量叉乘的右手法則:
cross(a,b) = norm(a)*norm(b)*sin
假設螢幕座標系x向右,y向上,那麼叉乘方向朝向本人。
二維向量的叉乘:cross(a,b) = ax * by - ay * bx = norm(a)* norm(b) * sin
叉乘的結果是正數,說明a到b是逆時針,反之順時針;
結果若是0,則說明a,b共線。
先用向量夾角公式算出弧度,再用向量叉乘算出順逆,可以得到 +-0~pi之間。
若要直接算出0~2pi的逆時針角度,由:
sin=cross(a,b)/norm(a)/norm(b)
cos=(a.*b)/norm(a)/norm(b)
可得:tan=cross(a,b)/(a.*b)
a~b逆時針0~360角度就是:pi+atan(tan)
。
我在網上看到了乙個公式:
平面上三個點:
p1(x1,y1)
-->頂點 ,
p2(x2,y2)
-->頂點 ,
p3(x3,y3)
-->原點,
s(p1,p2,p3)=(x1-x3)*(y2-y3)-(x2-x3)*(y1-y3)
如果s>0 則說明 這連線這3個點時是按照逆時針的順序,如果是s<0則說明連線這3個點是按照順時針的順序
向量 點積應用 兩個向量夾角
點積最重要的應用是計算兩個向量的夾角,或者兩條直線的夾角。圖給出了二維的情況,其中向量b和向量c與x軸的夾角分別為b,c,從基本三角函式可得 b b cosb,b sinb b 表示b的模就是b的長度 c c cosc,c sinc 將上式代入點積等式,將它們的對應的分量相乘,再把結果相加,於是得到...
python求兩個向量的夾角
import numpy as np x np.array 3,5 y np.array 4,2 兩個向量 lx np.sqrt x.dot x ly np.sqrt y.dot y 相當於勾股定理,求得斜線的長度 cos angle x.dot y lx ly 求得cos sita的值再反過來計算...
兩個向量之間的夾角公式 奇技淫巧系列 向量叉乘
一般我們在解決立體幾何題目時會選擇建立座標系,因為這樣做比較保險也有固定套路。很多時候這些題目要求你計算某乙個面的法向量 normal vector 這在高中階段也是有固定方法的,我們這裡想要介紹的是一種更高階也更迅速的方法,也就是引入向量叉乘 cross product,向量 同物理中的 向量 概...