計算機圖形學CG-6-transformation_第1頁
計算機圖形學CG-6-transformation_第2頁
計算機圖形學CG-6-transformation_第3頁
計算機圖形學CG-6-transformation_第4頁
計算機圖形學CG-6-transformation_第5頁
已閱讀5頁,還剩91頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

GeometricGraphics

Transformation

幾何圖形變換

基本幾何變換

BasicGeometrictransformation

■在方向、尺寸和形狀方面的變化是通過幾

何變換來完成的。

■基本幾何變換都是相對于坐標原點和坐標

軸進行的。

3

基本幾何變換

BasicGeometrictransformation

■平移變換transIation

■旋轉(zhuǎn)變換rotation

■比例變換seaIing

■對稱變換refIection

■錯切變換shearing

4

Translation

平移距離

translationdistance

tx,ty

5

Translationmatrix

X

p二

!

x=x+LJ

*/v

P'=

j=歹+々

P'=P+T

6

SeaIingtransformation

■比例變換改變物體的尺寸.

■假定物體的比例變換是相對于坐標原點O

X'=xs*y=ysy

sxX方向的比例因子.

SyX方向的比例因子.

7

0

SeaIingtransformationmatrixS

F0x

0sy[y

■PJ=SP

9

Sometips

■比例因子是一個正數(shù)positivenumber

■比例因子<1,物體變小,物體靠近原點.

■比例因子>1,物體變大,物體遠離原點.

■比例變換不是剛體變換

■當S*和相等時,稱為均勻變換

(uniform).

■當S*和Sy不等時,稱為不等比變換.

■物體經(jīng)過毋例變換后,改變了物體比例,

同時重定位(repositioned).

旋轉(zhuǎn)變換Rotationtransformation

■2D旋轉(zhuǎn)變換是指物體沿著某個定點轉(zhuǎn)動

某個角度的重定位過程(reposition)。

■定點或成為基準點(pivotpoint)

■旋轉(zhuǎn)角(rotationangIe0)

正值表示逆時針旋轉(zhuǎn)counterclockwise

負值表示順時針旋轉(zhuǎn)cIockwise

11

Rotationtransformation

(a)(b)

12

Rotationtransformationequation

■假定基準點位于原點,我們有

xf=rcos(0+3)=rcoscos0-rsinsin0

y"=rsin(①+6)=rcos0sin0+rsincos0

因為x=rcos①andy=rsin①

所以x=xcosO-ysinO

y=xsinO+ycosO

13

RotationtransformationmatrixR

■方程可表示為矩陣形式

P'=RP

cos/9—sin/9

sin。cos。

14

對稱變換reflectiontransformation

0x

T_J

■關(guān)于y軸的對稱變換x-10x

X--Xy-y

y01」

15

⑶對X軸(b)對y軸

16

關(guān)于坐標原點的對稱變換

reflectiontransformationaboutorgin

-10x

0-1y

17

關(guān)于對角線(diagonal)的對稱變換

■對角線y二x

□X-y

口y-x

■對角線尸-x

x--y

y--x

18

0)

錯切變換Sheartransformation

■X方向的錯切x1

□x,=x+cy!

口y-yJ0

y

y

錯切變換Sheartransformation

■y方向的錯切

□X-X

□y,=bx+y

21

矩陣表示與齊次坐標

MatrixRepresentationand

HomogeneousCoordinates

■問題的提出

很多應(yīng)用包含多個幾何變換,如先平移,再進

行旋轉(zhuǎn)變換、比例變換等

矩陣如何表示才能有效處理多個變換?

22

MatrixRepresentationand

HomogeneousCoordinates

■變換可表示成一般矩陣形式

P'二P+M2

這里,

M1是一個2X2矩陣,包含旋轉(zhuǎn)、比例等多個變換.

M2是一個2X1矩陣,包含平移變量.

■使用這個表達式,我們必須每步都計算變換坐標.

23

MatrixRepresentationand

HomogeneousCoordinates

■一個更有效的方法是將這些變換矩陣組合成一個,

最后根據(jù)初始坐標和坐標變換直接計算最終坐標.

■為了達到這個目標,必須重新規(guī)整上述方程,消

除平移矩陣M2

■將2D變換矩陣2X2模式擴展成3*3模式可解決上述

問題,所有變換矩陣可轉(zhuǎn)換成矩陣連乘形式.

24

齊次坐標HomogeneousCoordinates

■將每個笛卡爾坐標(X,力表示成三元組的坐標形

式優(yōu),外,〃,其中二者之間的關(guān)系滿足

X-x/h,y=y/h

■我們把它稱為齊次坐標,也可表示為(hx,hyf

h).

■對于2D幾何變換,可把齊次參數(shù)力設(shè)為任意非零

值。最常用的是設(shè)置A=1,則每個2D坐標可表

示成齊次坐標6GK1).

■齊次坐標可使得所有幾何變換表示成矩陣連乘形

O25

平移齊次坐標變換TransIation

■或表示成:P'=T

■平移變換的逆變換TT用負位移代替-勺,F(xiàn).

26

旋轉(zhuǎn)齊次坐標變換Rotation

一sin。0X

cos。0

01i

■旋轉(zhuǎn)變換的逆變換R7用-。值代入.

27

比例齊次坐標變換SeaIe

X5丫00X

0邑0J

10011

■Or,P'二S⑸㈤P

■比例變換的逆變換ST用1/Sx,^Sy值代入.

28

對稱齊次坐標變換RefIection

!

■關(guān)于X軸x-10oT%

□X-X

—0-1°y

口y--y100ij[i

■關(guān)于y軸-10oT%

X=-x010y

y-y100山

29

對稱齊次坐標變換RefIection

■關(guān)于原點x-100x

□x'=-x0-10

y'=-y

iooii

■關(guān)于尸X軸xoioX

□x'=y

□y'=x100

iooii

■關(guān)于y二一x軸

x-iX

nx'=-yoo

□yz=-x-100y

iooii30

錯切齊次坐標變換Shear

■沿X軸"1ooTx

□x5=x+cy—0Coy

□y-y1001£1

ooT%

■沿y軸ari

□X-Xy=bIOy

□y-bx+y1J[o0山

31

ompositeTransformations

田使用齊次坐標表示,多個變換的組合可計

算單個變換矩陣的連積,用復合矩陣來表

示。這個過程稱矩陣串聯(lián)或矩陣復合

concatenationorcompositionof

matrix.

叱如果點坐標采用列向量,復合矩陣由右到

左順序連乘排列,也就是說,后續(xù)變換左

乘前續(xù)變換。如果是行向量,則右乘。

32

組合平移CompositeTranslation

先平移ty1,然后再平移出2W

P'=T(tx2fty2){T(tx1fty1)P}

=仃%“T(tx1fty1)]P

10x2101°^x\+tx2

01y20101tx2+ty2

001001001

T72,ty2)T(tx13tyl)一丁(如+'x2,ty1+^y2)

33

組合旋車專CompositeRotation

■先旋轉(zhuǎn)。7,再旋轉(zhuǎn)多,相當于一次旋轉(zhuǎn)為+e2

P'=R(%){R(%)P}

={R(%)R(4)1P

R(%)R(%)=R(仇+e2)

,

p=R(%+e2)p

34

組合比例JCompositeScale

■先縮放Sxi,S1,再縮放Sx2,S2,相當于一次

縮放SRSSX2,Sy1SSy2

P,=S(sx2,sy2){S(sx1,sy1)P}

0

%*/V乙oo%00%%°

0500Syl0=011%0

001001001

S(Sx2,Sy?)S(Sx1,Syl)—S(Sx1Sx2,Sy1Sy2)

35

基準點是任意點的旋轉(zhuǎn)

GeneraIPivot-PointRotation

■平面圖形繞任意固定點pivotpoint(x〃

%)的旋轉(zhuǎn)可由通過平移-旋轉(zhuǎn)-平移操作來

實現(xiàn):

1.平移物體及固定點,使得固定點移到原

2.圍繞原點旋轉(zhuǎn)物體.

3.再將物體及固定點平移回原來位置.

36

繞任意點(Xr,y)的旋轉(zhuǎn)矩陣

10xrCOS。一sin。010—xr

o1Ksin。cos。001f

R=

001001001

cos?!猻in。x(l-cos0)+ysin3

rr

sin。cos。j;(l-cos。)—x〃sin。

001

可以表示成

T(xr?yr)R(0)T(-xr9-y)=R(xpyr?0)

37

基準點是任意點(xr,yr)的旋轉(zhuǎn)方程

可表示為

J

x=xr+(x-xr)cos0-(y—yr)sin0

J

y=yr+(x-xr)sin0+(y-yr)cos0

(xr,y,為任意點的坐標

基準點是任意點的旋轉(zhuǎn)可以看作先平移到原

點,旋轉(zhuǎn)后再平移回任意點。

38

基準點是任意點的比例縮放

GeneraIFixed-PointSeaIing

■基于任一固定點J/J的比例縮放也可通

過三個步驟實現(xiàn):

1平移物體,使得固定點與原點位置相符.

2.再使物體做相對于原點的比例縮放.

3.再使用步驟1的逆操作,使物體和固定點回到原

來位置.

39

基準點是任意點的縮放

100oTi°~xf

010%001~yf

001001001

S'oX/(l-sQ

°Sy丹(JS>)

001

T(Xf,yf)S(sx9sy)T(-xf9-yf)=S(xf9yf9sx9sy)

40

對任意直線作對稱變換

■設(shè)任意直線的方程為Ax+By+C=O,直線在x軸和y軸上的截距

分別為-C/A和-C/B,直線與x軸的夾角為

a.a=arct虱一A/B)

41

對任意直線作對稱變換步驟

1.X軸方向平移,使直線通過原點

-ioaA

T(-G=010

001

42

對任意直線作對稱變換步驟

2.繞原點旋轉(zhuǎn)角度,使直線與X軸相重合

cosasin。0

R(-a)=一sin。cos。0

001

43

對任意直線作對稱變換步驟

3.繞X軸對稱變換

100

F(reflection)=0-10

001

對任意直線作對稱變換步驟

4.繞原點旋轉(zhuǎn)角度,使直線轉(zhuǎn)回原來的角度

coso-sma0

R(a)=sin。cosa0

001

45

對任意直線作對稱變換步驟

5.X軸方向平移回原來的位置

"10-C/A

7(4)=010

001

46

對任意直線作對稱變換復合矩陣

M=T(tx)R{a}F(reflection)R(-a)T(-tx)

47

矩陣合并特性

Concatenationproperties

■矩陣相乘滿足結(jié)合律

D4"L'J/JLJ'4JL/

■矩陣一般不滿足交換律

48

Fmol

Posibon

FlgurrVIi

ReversingIh?orderinwhicha<equcnceofIraibtomutloiViis

performedmayaffecttheiranslormcdjwitionufanobjectIn(4an

ubjertBfir5tIrarvldled,thenn)Utcd.In(b)Jhe0峰式grotatttifirsts

thentramhhd

幾何變換中滿足交換律的矩陣

■二次連續(xù)平移

□TJT2=T2*TI

■二次連續(xù)旋轉(zhuǎn)

□R1*R2=R2*RI

■二次連續(xù)比例縮放

□S1*S2=S2*S1

50

Summary

■基本幾何變換(平移、旋轉(zhuǎn)、比例、對稱)

■齊次坐標的概念和目的

■復合變換,對任意點/直線的變換可轉(zhuǎn)換為

基本幾何變換問題來處理

■矩陣連乘及其順序排列規(guī)則

■矩陣運算規(guī)則

51

3DTransformation

圖形變換

52

3D基本幾何變換

3DGeometrictransformation

■3D幾何變換可由2D幾何變換擴展而來,包

括:

3D平移

3D旋轉(zhuǎn)

3D比例縮放等

■同樣,我們用齊次坐標來表示3D幾何變換

矩陣

54

3D平移變換transIation

z'=z+tz

orP=TP

55

一個三棱錐的平移

X

56

3D比例變換

oooTx

VoSy00J

z'o0邑0z

10001£1

P'=SP

57

3D比例變換

■當sx=sy=sz>1時,圖形相對于原點作等比

例放大。

■當SX=sy=sz<1時,圖形相對于原點作等比

例縮小。

■當sx〈>sy〈>sz時,圖形作非等比例變換。

58

全比例變換

■當sx二sy二sz是稱全比例變換

當s<1時,3D物體等比例放大

當s>1時,3D物體等比例縮小

59

一個正方體的等比例變換

F

60

一個三棱錐的不等比例變換

61

3D旋轉(zhuǎn)Rotation

■3D旋轉(zhuǎn)可以是繞3D空間中任意一條直線旋

轉(zhuǎn)。

■和2D一樣,繞坐標軸逆時針方向旋轉(zhuǎn)為正

角,假定我們從坐標軸的正向朝著原點觀

看。

62

3D旋轉(zhuǎn)Rotation

(01

63

3D旋轉(zhuǎn)Rotation

64

繞Z軸旋轉(zhuǎn)

xcos?!猻in。0oT%

V,sin。cos。00

z0010z

100011

or,P'=Rz(0)90旋轉(zhuǎn)角

65

繞Z軸旋轉(zhuǎn)

x'=xcos0-ysin0

y'=xsin0+ysin0

zJ=z

■用Y替代X,用Z替代Y,用X替代Z:x->y-

>z->x可以給出繞X,Y軸的循環(huán)變換

66

繞X軸旋轉(zhuǎn)

V'=ycos0-zsin0

z,=ysin9+zcos0

p'=Rx(0)Px'=x

X1100oT%

0cos。-sin。0

z,0sin。COS0oz

10001」U

67

繞Y軸旋轉(zhuǎn)z'=zcos0xsin0

xJ=zsin0xcos0

P'=Ry(0)Py,=y

x!cos。0sin。0x

0100J

一sin。0cos。0z

100011

68

旋轉(zhuǎn)變換示例

(a)(b)

69

逆旋轉(zhuǎn)

■逆旋轉(zhuǎn)用-。替換0O

■替換后,有逆旋轉(zhuǎn)變換矩陣就是旋轉(zhuǎn)變換

矩陣的轉(zhuǎn)置矩陣:

R-1=RT

70

3D對稱變換

■關(guān)于XOY平面對稱

f「X,

X-XioooTx

0100

y'=y

z*=—zz,00-10z

10001£1

71

3D對稱變換

■關(guān)于YOZ平面對稱

f「X,

X--loooTx

0100

y1=y

z'=Z2'0010z

10001£1

72

3D對稱變換

■關(guān)于xoz平面對稱

,「X,

X=XioooTx

y1=-yy,0-100

z'=Z2'0010z

10001£1

73

對稱變換不總圖

6T

(b)

74

3D對稱變換

■關(guān)于x軸對稱

x!ioooTx

y'=-y0-100J

z'=-zz'00-10z

0001£1

75

3D對稱變換

■關(guān)于丫軸對稱

f「X’

X--100OTx

y,=y0100j

z'=-zz'00-10z

0001£1

76

3D對稱變換

■關(guān)于z軸對稱

x!—1oooT%

X二一X

y'=-y0-100J

z'=zz'0010z

0001£1

77

3D錯切變換

■沿x軸錯切

!

x)=x+dy+gzx1dg0x

y'=yy0100

z'=zz'0010z

10001£1

78

3

3D錯切變換

■沿丫軸錯切

x!ioooTx

X二X

b1h0

Y=bx+y+hz

2’0010z

Z=Z

1OOO1£1

80

3D錯切變換

■沿z軸錯切

XioooTx

X=X

0100

y,=y

Z10z

z!=cx+fy+zCf

10001£1

81

三維組合變換

■與二維圖形的組合變換一樣,三維立體圖

形也可通過三維基本變換矩陣,按一定順

序依次相乘而得到一個組合矩陣(稱級聯(lián)),

完成組合變換。同樣,三維組合平移、組

合旋轉(zhuǎn)和組合比例變換與二維組合平移、

組合旋轉(zhuǎn)和組合比例變換具有類似的規(guī)律。

82

相對于空間任意一點的3D變換

■D先將物體連同參考點平移回原點

-2)相對于原點作幾何變換

■3)再進行平移逆變換

M=T(txtytz)S(sxsysz)T(~tx>-ty^-tz)

圖形變換矩陣s可以是旋轉(zhuǎn)、比例等變換

83

繞空間任意軸線旋轉(zhuǎn)

可由以下步驟實現(xiàn)

■平移物體使得旋轉(zhuǎn)軸通過坐標原點

■旋轉(zhuǎn)物體使得旋轉(zhuǎn)軸和坐標軸相吻合

■再圍繞相吻合的坐標軸旋轉(zhuǎn)相應(yīng)的角度

■逆旋轉(zhuǎn)回原來的方向角度

■逆平移回原來的位置

我們可以將旋轉(zhuǎn)軸變換到3個坐標軸的任意一個。

但直觀上看,變換到Z軸,和2D情況相似,容易被

接受。

84

Y

Initial

Step1

Position

Translate

totheOriginStep2

RotateP;

ontothezAxis

Step4Step5

Step3RotatetheAxisTfansleuthe

RotatethetotheOriginalRotationAxis

ObjectAroundtheOrientationtotheOriginal

/AxisPosition

繞過原點的直線ON旋轉(zhuǎn)

(a)(b)

86

繞過原點的直線旋轉(zhuǎn)

■設(shè)ON為過原點的任意直線,其單位矢量為

n—{/,m.n}

■則該直線的方程為

xyz

mn

87

繞過原點的直線旋轉(zhuǎn)。角

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論