計算機圖形學 opengl版本 第三版------胡事民 第四章 圖形學中的向量工具算法
一 基礎工具
1:向量分析和變換 兩個工具 能夠設計出各類幾何對象spa
點和向量基於座標系定義 設計
拇指指向z軸正方向 從x軸的正向握向y軸的正向, 能夠分爲左手和右手座標系。對象
點A到點B的位移稱爲向量v 則v=B-A 尾-頭blog
一個n維向量是一個n元組 w=(w1,w2,w3,...)基礎
用矩陣來表示向量 更加方便清晰反射
2:向量的基本運算法則方法
向量a b 標量s (實數) a=(a1,a2,a3) (向量的座標表示) b=(b1,b2,b3) im
加法:a+b= (a1+b1,a2+b2,a3+b3)
乘法:s(a)=(s*a1,s*a2,s*a3)
有些系統中 標量s表示複數 這裏不討論
3. 向量的線性組合
m個向量v1,v2,v3...vm
向量w=a1v1+a2v2+a3v3+...am+vm
其中am爲標量
特殊的線性組合:仿射組合 凸組合
向量的仿射組合:標量係數的和爲1 且僅和標量有關
a1+a2+a3+...+am=1
兩個向量a和b的仿射組合形式
(1-t)a+(t)b
向量的凸組合:標量的和爲1 且 各個標量>=0
4.向量的度量和單位向量
w爲向量
|w|=根號下(w1^2+w2^2+w3^2+....+wn^2) 勾股定理 模爲頭尾兩點的距離
有時須要縮放向量 使向量的長度爲一,這一過程被叫作向量的歸一化 歸一化的結果爲單位向量
爲了獲得a的歸一化向量 咱們能夠用1/|a|數乘a
a的單位向量=a/|a| 其中|a|!=0
例如:a=(3,-4) 那麼|a|=5 歸一化的結果爲a^=(3/5,-4/5) 有時咱們也吧單位向量當作方向。
任何一個向量均可以寫成:a=|a|a^ 向量的模乘方向
二.點積
1.兩個工具 點積 和叉積
點積獲得一個標量,用於二維向量
叉積獲得一個向量 用於三維向量
a.b=a1b1+a2b2
定義:
n維向量v=(v1,v2,v3...vn) w=(w1,w2,w3...wn)
點積d表示爲v.w=v1.w1+v2.w2+...vn.wn
性質:對稱性(交換):a.b=b.a
線性:(a+c).b=a.b+c.b
同質性:(s.a).b=s(a.b)
|b|.|b|=b.b
2.兩向量的夾角:
b=(|b|cos∠b,|b|sin∠b)
c=(|c|cos∠c,|c|sin∠c)
b.c=|b|.|c|.cos∠c.cos∠b+|b|.|c|.sin∠c.sin∠b
b.c=|b|.|c|.cos∠boc
上式兩邊同時除以|b||c|
cos(∠boc)=b^.c^ 兩個向量b和c之間的夾角的餘弦等於歸一化後向量的點積
3.b.c的符號和正交性
b.c>0 角度小余90度
b.c=0 角度等於90度 此時b垂直於c 則稱向量b和向量c是正交的。
b.c<0 角度大於90度
正交也叫直交或者垂直
三維形式經常使用 叫作標準單位向量,分別稱爲 i j k
定義:三維空間的標準單位向量有以下份量的向量
i=(1,0,0) j=(0,1,0) k=(0,0,1) 也能夠寫成矩陣的形式
任意一個三維向量如(a,b,c)均可以寫成另外一種形式
(a,b,c)=ai+bj+ck
4.二維正交向量
a=(ax,ay)的正交向量爲b(-ay,ax) 致使a.b=0 兩個向量垂直 ⊥
與a向量的正交向量有無窮多個 任何一個數成b的結果都是與a正交的
定義:給定a=(ax,ay) 則a⊥ =(-ay,ax) 與a逆時針正交
a像左轉90度a⊥ a想右轉90度爲-a⊥
a⊥ 的一些有趣的屬性
1.線性 ( a+b)⊥ =a⊥ +b⊥ 對任意標量A 有(Aa)⊥ =Aa⊥
2.a⊥⊥ =(a⊥ )⊥ = - a
3. 正交點積 a⊥ .b=axby-aybx 其中a=(ax,ay)
a⊥ .a=0
|a⊥ |^2=|a|^2 兩正交向量具備相同的長度
a⊥ .b=-b⊥ .a 反對稱性 例如(0,1) 和(-1,0) 爲反對稱性
4.
行列式
上面的兩個證實 將座標帶入後化簡便可獲得
5.正交投影和點到直線的距離
圖形學中常出現的問題
a 將一個向量投影到另外一個向量上
b 將一個向量分解成不一樣方向上的份量
c 找到一點到另外一條直線的距離
k和m是待定的常數 c=kv+mv⊥
咱們說從c到v的正交投影是kv而且點c到直線的距離是|mv⊥|
求出k和m 的方法:等式兩邊同時乘以一個v
c.v=kv.v+v.mv⊥
k=c.v/v.v
兩邊同時乘以 v⊥
m=c.v⊥/v⊥.v⊥
距離=m .v⊥
也等於
例題:4.3.5
將向量c(6,4)到v=(1,2)的正交投影 並畫出相關的向量
用4.20的公式:(14/5,28/5)
例題:4.3.6
求點c=(6,4)到過點(1,1)和(4,9)的直線的距離
6.投影的應用:反射
入射角等於出射角