向量加法
在二維座標中 a點的座標是(4,5),b點座標是(2,2),那麼ab向量就是b點的座標減去a點的座標,計
算如下(2-4,2-5)=(-2,-3)。
同樣的,兩個向量相加的時候也就是座標的各個軸上的值進行相加
用上面的方法,我們在新增乙個點c座標是(3,-2),
ab向量的值為(-2,-3),bc向量的值為(1,-4),那麼ab向量加上bc向量的值(-2+1,-3-4)=(-1,-7)
這裡我們神奇的發現ac向量也就是(3-4,-2-5)=(-1,-7),所以ab向量加上bc向量的值等於ac向量
這就是我們常用的三角形法則 「首尾相連連首尾」
當然,使用的時候更多情況還是類似ab向量加上ac向量這種情況比較多,當兩個向量同起點的時候就要
使用四邊形法則進行計算,也可以看做將乙個向量進行平移,強行使首尾相連然後使用三角形法則
向量減法
在二維座標中 a點的座標是(4,5),b點座標是(2,2),c點座標是(3,-2),
ab向量的值為(-2,-3),bc向量的值為(1,-4),那麼ab向量減去上bc向量的值(-2-1,-3+4)=(-3,1)
這個我們可以理解為ab向量加上乙個bc的取反向量,也就是-bc向量(-1,4),
這裡我們發現這個值就是cb向量的值,
同理,當ab向量減去ac向量,也就是共同起點的時候,我們得到的值是(-2,-3)-(-1,-7)=(-1,4),這個值就
是cb向量的值,也就是說,當兩個向量相減的時候,得到的向量為減向量的終點指向被減向量的終點
二維向量的模
向量的模代表的就是向量的長度,只有長度意義,不代表方向概念
點o的座標是(0,0),也就是原點,點a的座標是(1,3),那麼oa向量的模我們可以通過簡單的畫圖得知是乙個
直角邊分別為1和3的直角三角形的斜邊,那麼根據勾股定理可得這個值為 √10,也就是oa向量的模等於
√10.
向量的夾角
兩個共起點向量所形成的小於180的夾角叫做向量的夾角
向量的點乘
數學演算法就是兩個向量的各個軸上的數值相乘之後把得到的數字相加,得到的是乙個標量
例如a向量(1,2),b向量(3,4),那麼 a向量點乘b向量 (1*3+2*4) = 11
根據余弦的曲線我們可以得知在0-180這個範圍內的值,當余弦值大於0,這個夾角是小於90度的銳角,反之就
是大於90的鈍角,可以用來判斷兩個向量的前後關係
向量的叉乘
叉乘又叫向量外積,幾何意義就是乙個同時垂直於這兩個向量的乙個向量,這個向量的方向取決於叉乘的先
後順序,所以a叉乘b和b差乘a的值是不一樣的,判斷這個方向可以使用右手定則,四指和兩個向量的夾角方
向一致大拇指指向的就是叉乘後向量的方向,這個向量的模等於叉乘兩個向量的模乘以夾角的正弦值.可以
用來判斷兩個向量的左右關係
單位向量
模長為一的向量被叫做單位向量,可以用來判斷兩個向量的方向是否一致.計算方法就很簡單,拿乙個向量除以這個向量的模,
得到的就是乙個單位向量
零向量
長度為0,沒有固定方向的向量,零向量不能作為單位向量,並且任何乙個向量和零向量相乘得到的都是零向量
3D數學基礎 向量
vector3.h hello 注釋 是否需要const修飾就是分析其資料是否需要修改,不需要修改就加const,安全性 一般有兩個地方需要考慮是否加const 1,成員函式引數處 2,成員函式本身,即類本身資料不允許修改 修飾的是this ifndef hello vector3 h define...
3D遊戲引擎數學基礎3 向量(下篇)
向量數乘 標量可以與向量相乘,可以直觀聯想到,該運算可以對向量進行縮放。該運算不改變向量的方向,除非標量是負數,這樣向量的方向與原來的方向相反。k u k ux,k uy,k uz 在unity引擎中有對物體進行縮放的功能,其提供在三個座標軸上的縮放,其底層的運算估計就是向量數乘。於是,有需要過載一...
3d數學基礎 常用向量相關運算
作為半路出家的unity程式,必須要補一補3d數學相關的基礎。在遊戲中,運用的比較多的就是三維向量了。三維向量中,比較常見的操作有 1.求兩點距離 這個比較簡單,直接使用目標點各個座標分量相減,然後利用勾股定理求取長度即可。math.sqrt x x y y z z 2.求兩向量夾角 求向量夾角,則...