譯者:劉鴻(lewis2012)審校:王玥亭(玥亭)
介紹
向量是具有大小和方向的實體。向量由分量組成。這些分量中的每一個表示沿着對應軸的位移。例如,表示為(2,3,1)的向量表示距離原點沿x軸兩個單位的位移; 沿y軸有三個單位的位移; 沿着z軸的一個單位的位移。
向量之間可以進行加減運算。向量可以相乘以或除以一個标量。然而,與實數乘法不同,向量不能在它們之間相乘,但是存在兩種特殊類型的向量乘法:向量點乘和向量叉乘。
在本節中,将學習計算機圖形學中最常用的向量操作。将學習如何加減向量,如何乘以除以标量,如何計算向量點積和叉積。
向量
向量由N個分量組成。分量的數量決定了向量的維度。三維向量包含定義沿着x,y和z軸的三個分量。在數學上,三維向量定義為:
形象地,具有沿着x軸4個單位位移和沿y軸3個單位位移的二維向量u表示如下:
加/減運算
加法運算
在向量相加法中,每個向量分量被單獨地添加到第二向量中對應分量。向量加法在數學上表示為:
例如,添加兩個三維向量如下:
形象地,向量加法表示如下:
減法運算
在向量減法中,向量的分量彼此相減。向量減法在數學上表示為:
例如,兩個三維向量相減如下表示:
标量乘法/除法運算
在幾何上,将向量與标量相乘來修改向量的長度。将向量除以标量具有相反的效果。要将向量乘以标量,隻需将每個分量乘以标量即可。注意,将向量乘以正标量僅影響其大小。然而,将向量乘以一個負标量,将會影響向量的大小也會反轉向量的方向。标量乘法在數學上表示為:
例如,将向量縮放3倍的過程如下:
形象地,向量标量乘法表示如下:
向量乘積
與實數不同,向量不具有單個乘法運算。他們有兩種不同類型的乘操作; 向量點積和向量叉積。向量點積産生标量,并且主要用于确定向量之間的角度。向量叉積産生垂直于被乘數和乘數向量的第三個向量。
向量點積
點積是計算兩個向量之間的角度的向量操作。點積以兩種不同的方式計算。
方式1:
在上面的等式中,關于向量之間的角度的信息丢失。然而,該方程的結果可以告訴我們每個向量的方向。例如,如果點積等于1,則意味着兩個向量具有相同的方向。如果點積是0,則意味着兩個向量彼此垂直。最後,如果點積是-1,則意味着兩個向量都朝向相反方向。
方法2:
如果我們有興趣尋找兩個向量之間的角度,可以使用下面的點積方程。
向量叉積
兩個向量産生一個平面。向量叉積運算産生垂直于兩個向量的向量。兩個向量的叉積計算如下:
重要的是要記住,向量叉積隻能用三維向量計算。如果向量存在于二維空間中,并且需要叉積,則向量必須轉換為三維向量。
向量的大小
向量大小表示矢量的長度。向量的長度計算如下:
例如,向量u的大小如下:
形象地,向量的大小是在下面的圖像中形成的三角形的斜邊:
單位向量
計算機圖形學中一個非常有用的概念是所謂的單位向量。單位向量是長度為一個單位的向量。将非單位向量轉換為單位向量的過程稱為歸一化。為了歸一化向量,每個分量除以向量的長度。數學上是這樣的:
向量u的歸一化如下:
【版權聲明】
原文作者未做權利聲明,視為共享知識産權進入公共領域,自動獲得授權。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!