Caùc Pheùp Bieán Ñoåi Trong Ñoà Hoïa Ba Chieàu: Chöông 6
Caùc Pheùp Bieán Ñoåi Trong Ñoà Hoïa Ba Chieàu: Chöông 6
http://www.ebook.edu.vn
Phep tnh tien, quay, bien oi t le, va phep bien dang la cac v du cua cac phep bien
oi hnh hoc. Chung con c biet ti nh la cac phep bien oi affine c s. Trong so
o, phep quay co the noi la quan trong va hu dung nhat v no cho phep chung ta
nhn cac oi tng theo cac hng khac nhau, ieu nay cho phep chung ta cam nhan
cac hnh ve ba chieu trc quan hn, de chu hn.
Ta co the tao ra nhieu phien ban cua cung mot oi tng bang cach ve oi tng nay
sau khi ap dung mot day cac phep bien oi hnh hoc len no (xem hnh 6.1).
1.1. Mot so khai niem lien quan
1.1.1. Phep bien oi affine
Phep bien oi affine la phep bien oi tuyen tnh, kha nghch. Phep bien oi nay bao
toan tnh song song cua cac ng thang cung nh bao toan tnh t le ve khoang cach
cua cac oan thang. Tuy nhien, phep bien oi nay khong bao toan goc nghieng va
chieu dai cac oan thang. Cac phep bien oi nay cung bao toan t le ve khoang cach
(xem them chng 3)
Cac he truc toa o theo quy c ban tay phai va ban tay trai
y
x y = z
(a)
yx= z
(b)
Hnh 6.2 Cac he toa o theo quy c ban tay phai (a)
http://www.ebook.edu.vn
He toa o Descartes ba chieu co the nh ngha theo quy c ban tay trai hoac ban tay
phai (xem hnh 6.2).
nh ngha
He toa o theo quy c ban tay phai la he toa o vi cac truc x, y, z thoa ieu kien:
Neu e ban tay phai sao cho ngon cai hng cung chieu vi truc z, khi nam tay lai,
chieu cac ngon tay chuyen ong theo hng t truc x en truc y.
He toa o theo quy c ban tay trai la he toa o vi cac truc x, y, z thoa ieu kien:
Neu e ban tay trai sao cho ngon cai hng cung chieu vi truc z, khi nam tay lai,
chieu cac ngon tay chuyen ong theo hng t truc x en truc y.
http://www.ebook.edu.vn
Trong he toa o thuan nhat, moi iem (x, y, z) trong khong gian Descartes c bieu dien bi
mot bo bon toa o trong khong gian 4 chieu thu gon (hx, hy, hz, h) . e tien li, ngi ta thng chon
h=1. Nh vay, mot iem (x, y, z) trong he toa o Descartes se bien thanh iem (x, y, z, 1) trong he toa
o thuan nhat; con iem (x, y, z, w) trong he toa o thuan nhat (vi w 0) se tng ng vi iem (x/w,
y/w, z/w) trong he toa o Descartes (xem hnh 6.3).
Hnh 6.3 Cac iem trong he toa o thuan nhat va Descartes
projected
homogeneous
(x/w,y/w,z/w,1)
homogeneous
(x,y,z,w)
w n dang
t le, quay, bie
w=1
(x'
y' z' 1) = (x
Descartes
(x/w,y/w,z/w)
tnh tien
d
y z 1).
g
trx
b
e
h
try
c 0
f 0
i x0
trz 1
Dang ma tran cua phep bien oi affine trong he toa o thuan nhat
Hnh 6.4 Dang tong quat cua phep bien oi affine ba chieu
Phep bien oi affine ba chieu bien iem P thanh iem Q co dang : Q = P.M , trong o
Q = (Q x , Q y , Q z ,1) , P = (Px , Py , Pz ,1) va M la ma tran bien oi 4x4 trong he toa o thuan
Tnh chat ng thang c bao toan. Ngha la, mot ng thang trong khong gian ba
chieu khi bien oi se thanh mot ng thang.
Tnh song song c bao toan. Ngha la, hai ng thang song song khi bien oi cung
se thanh hai ng thang song song.
Tnh t le ve khoang cach c bao toan. Ngha la, anh cua mot iem P chia oan
thang AB theo t le f, se chia oan thang AB theo t le f, vi AB la anh cua oan
thang AB.
(x,y,z)
tr =(trx,try,trz)
x
z
http://www.ebook.edu.vn
Hnh 6.5 Phep tnh tien vi vector tnh tien tr=(trx, try, trz)
Vector tnh tien tr trong phep bien oi ba chieu co mot tac ong rat trc quan: moi
iem c dch i mot khoang la trx, try, trz theo ba truc. Ma tran M cho phep tnh tien
co dang nh sau:
1
0
tr(trx ,try ,trz ) =
0
trx
0
1
0
try
0
0
1
trz
0
0
(6.1)
Phep bien oi t le trong ba chieu la mot s m rong cua phep bien oi t le trong hai
chieu :
sx
0
S(s x ,s y ,s z ) =
0
0
sy
0
0
0
0
sz
0
0
0
(6.2)
x
z
Nh hnh 6.6, oi tng c phong to gap oi, ong thi vi tac ong cua phep bien
oi lam cho oi tng b ay ra xa goc toa o hn.
Khi cac he so t le sx , s y , sz bang nhau, ta co phep bien oi ong dang.
http://www.ebook.edu.vn
Trong phep bien oi S(sx , s y , sz ) , goc toa o O se co anh la chnh no. Ta goi goc toa o la iem
bat ong (fixed point) cua S, hay con goi O la tam cua phep bien oi.
Tong quat hn, ta co the mo ta mot phep bien oi t le theo mot tam (x f , y f , z f ) bat k
bang mot day ba phep bien oi sau:
Tnh tien ngc iem bat ong t goc toa o tr ve v tr ban au.
Nh vay, ket hp ba bc bien oi tren ta co c ma tran bien oi cua phep bien oi t le theo
tam (x f , y f , z f ) vi he so t le sx , s y , sz la:
sx
Sf (s x ,s y ,sz ) =
0
(1-sx )x f
0
sy
0
(1-s y )y f
0
0
sz
(1-sz )z f
0
0
(6.3)
h
Sh = xy
h
xz
0
hyx
hzx
hyz
hzy
0
0
0
(6.4)
ay co the hieu hxy la lng ma toa o y cua P tac ong len toa o x cua Q.
y
x
z
x
z
Hnh 6.7 - Phep bien dang theo truc x : hxy= hxz = 1, cac he so khac bang 0
Tng t nh trong trng hp phep bien oi t le, phep bien dang Sh (6.4) cung co
iem bat ong la goc toa o O. Ta cung co the xay dng phep bien dang vi tam bien
dang tai mot iem (x f , y f , z f ) bat k.
Ma tran bien oi cua phep bien dang vi tam tai (x f , y f , z f ) la:
http://www.ebook.edu.vn
xy
Sh =
hxz
-y f hxy z f hxz
h yx
1
h yz
-x f h yx z f h yz
hzx
hzy
1
-x f hzx y f hzy
0
(6.5)
0
Khac vi phep quay trong hai chieu quanh mot iem bat k, trong ba chieu ta co phep
quay quanh mot truc toa o. ay ta s dung he toa o theo quy c ban tay phai va
quy nh chieu quay dng la ngc chieu kim ong ho.
Ta co cac ma tran bieu dien cac phep quay quanh truc x, y, z mot goc lan lt la
R(z, ), R(y,), R(x, ):
http://www.ebook.edu.vn
- sin
R(z, ) =
0
sin
cos
0
0
0 0
0 0
1 0
0 1
(6.6)
z
Hnh 6.8 - Phep quay quanh truc z
0
R( y, ) =
sin
0 - sin
1
0
0
0
cos
0
0
0
(6.7)
http://www.ebook.edu.vn
z
Hnh 6.9 - Phep quay quanh truc y
0
1
0 cos
R(x, ) =
0 - sin
0
0
0
sin
cos
0
0
0
(6.8)
Nhan xet rang cac gia tr nam tren dong va cot tng ng vi truc x trong ma tran
R(x,) se co gia tr la 0 ngoai tr gia tr nam tren ng cheo chnh la 1. ieu nay
am bao cho toa o x cua cac iem la khong b thay oi qua phep bien oi. Nhan xet
nay cung tng t cho trng hp cac ma tran con lai.
http://www.ebook.edu.vn
x
Hnh 6.10 - Phep quay quanh truc x
Ghi chu:
Cac nh ngha ve chieu quay c dung chung cho ca he toa o theo quy c ban tay
phai va ban tay trai. Cu the chieu dng c nh ngha nh sau:
http://www.ebook.edu.vn
Gia s truc quay i qua hai iem P0, P1 nao o vi phng c bieu dien bi vector
n v k. Quay iem (x, y, z) quanh truc k theo mot goc se bien thanh iem (x, y,
z) (xem hnh 6.12).
y
P1
k
P0
d
k'
ky
k"
http://www.ebook.edu.vn
e thc hien phep quay quanh k mot goc , ta co the thc hien mot chuoi cac thao tac
sau:
Quay quanh truc x mot goc e at truc k' nam tren mat phang Oxz: rot(x,) (thanh
truc k).
Thc hien chuoi cac phep bien oi ngc lai qua trnh tren.
Goc quay c xac nh da tren chieu cua k' len mat phang yz. Ta khong can tnh
cu the. Thay vao o ta tnh sin() va cos() mot cach trc tiep.
T hnh 6.12 ta co:
k=
P0 P1
, d = k 2y + k 2z
P0 P1
cos( ) = d / 1 = d, sin( ) = kx / 1 = kx
Nh vay, phep quay quanh mot truc P0P1 bat k mot goc , rot(P0P1, ), co the c
phan ra thanh chuoi cac bien oi c s sau: tr(-P0) rot(x,) rot(y, -) rot(z, ) rot(y, )
rot(x, -) tr(P0)
y
kx
k"
z
Hnh 6.13 - Tnh goc
e ket hp cac phep bien oi affine ba chieu, chung ta cung thc hien tng t nh
phep bien oi hai chieu bang cach dung he toa o thuan nhat.
Bang cach nay chung ta cung co cac ket qua tng t nh trong trng hp bien oi
hai chieu. Neu M1 bien oi P thanh Q va M2 bien oi Q thanh S th M1M2 se bien
oi P thanh S, do o ma tran ket hp cua nhieu phep bien oi co the c tnh t viec
nhan cac ma tran cua cac phep bien oi thanh phan.
http://www.ebook.edu.vn
Cho en thi iem nay, chung ta a khao sat cac phep bien oi ba chieu nh la thao
tac dch chuyen mot iem (mot oi tng) t v tr nay sang v tr khac trong mot he
truc toa o. Tuy nhien, nhieu khi, ta can xem xet cac oi tng trong cac he toa o
khac nhau, muon chuyen t mot he toa o nay sang he toa o khac. V du, trong quy
trnh hien th oi tng ba chieu, ta can at mot oi tng vao he toa o chung cho tat
ca cac oi tng trong canh (he toa o the gii thc), sau o, xac nh tia nhn, ta
chuyen oi t he toa o the gii thc sang he toa o quan sat, va cuoi cung ta phai
chuyen t he toa o quan sat sang he toa o thiet b, ni cac oi tng se c hien
th.
Khi mo hnh hoa oi tng, ta thng mo ta chung trong mot he toa o cuc bo, thuan
tien nhat cho viec mo hnh hoa. Sau o, bang cac phep bien oi ta se at chung vao
canh can hien th. Cach tiep can nay cho phep ta khong can mo hnh hoa qua nhieu
oi tng ma ch mo hnh hoa theo chung loai oi tng. V du e tao canh trong hnh
6.1 ta ch can mo hnh hoa mot trai banh, mot con ki, ban, Sau o phat sinh ra nhieu
con ki nh thay trong hnh ve. Mot v du khac co the xem trong hnh 6.14.
Viec chuyen oi cac mo ta oi tng t he toa o nay sang he toa o khac thc hien
theo quy trnh tng t nh trong o hoa hai chieu. Ta can xay dng ma tran bien oi
e khp c cac truc toa o cua hai he. Trc tien, ta can thc hien phep tnh tien
e hai goc toa o trung nhau. Sau o, ta phai thc hien tiep mot day cac phep quay e
khp cac truc toa o tng ng len nhau. Neu cac he toa o s dung cac t le o lng
khac nhau, ta phai thc hien them mot phep bien oi t le na e ong nhat cac he
toa o.
http://www.ebook.edu.vn
yt
Tractor
System
yW
xt
zt
xW
World
zW
yfW
xfW
zfW
Front-Wheel
System
Neu he toa o th hai co goc toa o at tai (x0, y0, z0) va cac vector c s c mo ta
nh trong hnh 6.15 (tng ng he toa o th nhat), trc tien ta can thc hien phep
tnh tien T(-x0,-y0,-z0). Sau o ta xay dng ma tran quay R da tren cac vector c s.
Ma tran nay se bien oi cac vector n v ux, uy, uz tng ng thanh cac truc x, y, z.
u' x1
u'
R = x2
u'
x3
0
u' y1
u' y2
u' y3
0
u' z1
u' z2
u' z3
0
0
(6.9)
0
Ma tran cua phep bien oi he toa o chnh la tch T.R. Ma tran nay bien oi he toa
o Descartes nay thanh he toa o Descartes khac, cho du chung la he toa o theo quy
c ban tay phai hay ban tay trai.
y
y'
u'y
u'x
(0,0,0)
(x0,y0,z0)
x'
u'z
z
z'
Hnh 6.15 - Chuyen oi he toa o
TOM TAT
Chung ta va khao sat cac phep bien oi affine ba chieu nh la s m rong cua cac phep bien oi affine hai chieu. Cung
nh cac phep bien oi affine hai chieu, trc tien ta khao sat cac phep bien oi c s: tnh tien, t le, quay; sau o khao sat cac
phep bien oi phc tap hn. ac biet, phep quay quanh mot truc bat k c khao sat chi tiet nh la mot minh hoa cho cac phan
http://www.ebook.edu.vn
ra mot phep bien oi affine bat k thanh tch cua cac phep bien oi affine c s. Nh khao sat cac phep bien oi affine vi bieu
dien dang ma tran trong he toa o thuan nhat nen cong viec kha n gian va nhat quan.
Lu y mot ieu, cac phep tnh tien va quay co chung thuoc tnh la : sau khi bien oi, hnh dang va kch thc cua oi
tng khong thay oi ma chung ch b thay oi v tr va nh hng trong khong gian. V vay, ngi ta goi hai phep bien oi nay
la phep bien oi rigid-body transformations.
Phan cuoi chng, chung ta a xem xet cac phep bien oi he toa o. Cac phep bien oi nay rat quan trong trong qua trnh
hien th oi tng ba chieu.
http://www.ebook.edu.vn
BAI TAP
1. Hay xac nh ma tran cua phep oi xng gng qua mat phang Oxy, Oxz, Oyz.
2. Hay xac nh ma tran bien oi cua phep oi xng gng qua mat phang i qua iem P(x,y,z) va co
vector phap tuyen n .
3. Hay xac nh ma tran cua phep oi xng qua truc toa o x, y, z.
4. Hay xac nh ma tran cua phep oi xng qua truc bat k i qua hai iem P0, P1.
5. Hay xac nh ma tran bien oi cua phep oi xng qua goc toa o O.
6. Hay xac nh ma tran bien oi cua phep oi xng qua mot iem P(x,y,z) bat k.
7. Cai at chng trnh cho phep ngi dung s dung mot trong cac phep bien oi affine (tnh tien, t
le, quay, bien dang, ) e bien oi oi tng, sau o hay phuc hoi lai oi tng goc.
8. Cai at chng trnh minh hoa s ket hp cac phep bien oi c s e tao thanh phep quay quanh
mot truc bat k.
9. Chng minh cong thc (6.3), (6.5).
10. Xay dng ma tran bien oi cua phep quay quanh mot truc bat k.
http://www.ebook.edu.vn