二維圖形的幾何變換
??? 正如我們?cè)诟戒浿刑岬降哪菢樱谬R次坐標(biāo)表示點(diǎn)的變換將非常方便,因此在本節(jié)中所有的幾何變換都將采用齊次坐標(biāo)進(jìn)行運(yùn)算。二維齊次坐標(biāo)變換的矩陣的形式是:
????????????????
這個(gè)矩陣每一個(gè)元素都是有特殊含義的。
形進(jìn)行平移變換;[
g
h
]是對(duì)圖形作投影變換;[
i
]則是對(duì)圖形整體進(jìn)行縮放變換。
1)平移變換

2)縮放變換

3)旋轉(zhuǎn)變換


4)對(duì)稱變換
對(duì)稱變換其實(shí)只是
a
、
b
、
d
、
e
取0、1等特殊值產(chǎn)生的一些特殊效果。例如:
-
當(dāng)
b
=
d
=0,
a
=-1,
e
=1時(shí)有
x
′=-x,y′=y,產(chǎn)生與y軸對(duì)稱的圖形。
-
當(dāng)
b
=
d
=0,
a
=-1,
e
=-1時(shí)有
x
′=x,y′=-y,產(chǎn)生與x軸對(duì)稱的圖形。
-
當(dāng)
b
=
d
=0,
a
=
e
=-1時(shí)有
x
′=-x,y′=-y,產(chǎn)生與原點(diǎn)對(duì)稱的圖形。
-
當(dāng)
b
=
d
=1,
a
=
e
=0時(shí)有
x
′=y,y′=x,產(chǎn)生與直線y=x對(duì)稱的圖形。
-
當(dāng)
b
=
d
=-1,
a
=
e
=0時(shí)有
x
′=-y,y′=-x,產(chǎn)生與直線y=-x對(duì)稱的圖形。
5)錯(cuò)切變換
-
當(dāng)
d
=0時(shí),x′=x+by,y′=y,此時(shí),圖形的y坐標(biāo)不變,x坐標(biāo)隨初值? (x,y)及變換系數(shù)b作線性變化。
-
當(dāng)
b
=0時(shí),x′=x,y′=dx+y,此時(shí),圖形的x坐標(biāo)不變,y坐標(biāo)隨初值? (x,y)及變換系數(shù)d作線性變化。
6)復(fù)合變換
如果圖形要做一次以上的幾何變換,那么可以將各個(gè)變換矩陣綜合起來(lái)進(jìn)行一步到位的變換。復(fù)合變換有如下的性質(zhì):
- 復(fù)合平移
對(duì)同一圖形做兩次平移相當(dāng)于將兩次的平移兩加起來(lái):
- 復(fù)合縮放
兩次連續(xù)的縮放相當(dāng)于將縮放操作相乘:

- 復(fù)合旋轉(zhuǎn)
兩次連續(xù)的旋轉(zhuǎn)相當(dāng)于將兩次的旋轉(zhuǎn)角度相加:
縮放、旋轉(zhuǎn)變換都與參考點(diǎn)有關(guān),上面進(jìn)行的各種變換都是以原點(diǎn)為參考點(diǎn)的。如果相對(duì)某個(gè)一般的參考點(diǎn)(
xf
,
yf
)作縮放、旋轉(zhuǎn)變換,相當(dāng)于將該點(diǎn)移到坐標(biāo)原點(diǎn)處,然后進(jìn)行縮放、旋轉(zhuǎn)變換,最后將(
xf
,
yf
)點(diǎn)移回原來(lái)的位置。切記復(fù)合變換時(shí),先作用的變換矩陣在右端,后作用的變換矩陣在左端。
-
關(guān)于(
xf
,
yf
)點(diǎn)的縮放變換

-
繞(
xf
,
yf
)點(diǎn)的旋轉(zhuǎn)變換

http://necweb.neu.edu.cn/ncourse//tuxingxue/Chapter6/CG_Txt_6_011.htm