Tài liệu Bài giảng Các phép biến đổi 3 chiều
11 trang |
Chia sẻ: hunglv | Lượt xem: 1211 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Bài giảng Các phép biến đổi 3 chiều, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 1/11
CAÙÙC PHEÙÙP BIEÁÁN ÑOÅÅI 3 CHIEÀÀU
Daããn nhaääp
• Cuøng moät loaïi ñoái töôïng coù theå xuaát hieän trong nhieàu
caûnh vaø xuaát hieän nhieàu laàn trong moät caûnh vôùi caùc
phöông vò, maøu saéc khaùc nhau.
• Neáu ta coù caùc moâ hình ñoái töôïng toát, ta coù theå phaùt sinh
ra caùc ñoái töôïng khaùc nhau töø moät moâ hình duy nhaát
nhôø caùc pheùp bieán ñoåi.
• Caùc pheùp bieán ñoåi quan troïng nhaát laø caùc pheùp bieán ñoåi
Affine vaø caùc pheùp chieáu.
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 2/11
Heää toaïï ñoää baøøn tay phaûûi/baøøn tay traùùi
• Heä toïa ñoä theo quy öôùc baøn tay phaûi: ñeå baøn tay phaûi
sao cho ngoùn caùi höôùng theo truïc z, khi naém tay laïi, caùc
ngoùn tay chuyeån ñoäng theo höôùng töø truïc x ñeán truïc y.
• Heä toïa ñoä theo quy öôùc baøn tay traùi: ñeå baøn tay phaûi sao
cho ngoùn caùi höôùng theotruïc z, khi naém tay laïi, caùc ngoùn
tay chuyeån ñoäng theo höôùng töø truïc x ñeán truïc y.
Heää toaïï ñoää thuaààn nhaáát (Homogeneous Coordinates)
• Moãi ñieåm (x, y, z) trong khoâng gian Descartes ñöôïc bieåu
dieãn bôûi moät boä boán toïa ñoä trong khoâng gian 4 chieàu
thu goïn (hx, hy, hz, h). Ngöôøi ta thöôøng choïn h=1.
• (x, y, z)Descartes (x, y, z, 1)Homogeneous
• (x, y, z, w)Homogeneous (x/w, y/w, z/w)Descartes (w ≠ 0).
x
w
w=1
homogeneous
(x,y,z,w)
projected
homogeneous
(x/w,y/w,z/w,1)
Descartes
(x/w,y/w,z/w)
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 3/11
Caùùc pheùùp bieáán ñoååi tuyeáán tính
• Pheùp bieán ñoåi tuyeán tính laø toå hôïp cuûa caùc PBÑ:
♦ Tæ leä
♦ Quay
♦ Bieán daïng vaø
♦ Ñoái xöùng
• Caùc tính chaát cuûa caùc pheùp bieán ñoåi tuyeán tính
♦ Thoaû maõn tính chaát veà toå hôïp tuyeán tính.
♦ Goác toaï ñoä laø ñieåm baát ñoäng.
♦ AÛnh cuûa ñöôøng thaúng laø ñöôøng thaúng.
♦ AÛnh cuûa caùc ñöôøng thaúng song song laø caùc ñöôøng thaúng
song song.
♦ Baûo toaøn tæ leä khoaûng caùch
♦ Toå hôïp caùc pheùp bieán ñoåi coù tính phaân phoái
Pheùùp tònh tieáán
• Dòch chuyeån moät ñieåm töø
vò trí ñeán vò trí khaùc trong
khoâng gian theo vector
offset tr.
( ) ( ) 0≠
=
ifc
heb
gda
vôùi
ifc
heb
gda
zyxz'y'x'
y
z
x
(x,y,z)
(x',y',z')
tr =(trx,try,trz)
T(s1P1 + s2P2) = s1T(P1) + s2T(P2)
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 4/11
Pheùùp bieáán ñoååi Affine
• Pheùp bieán ñoåi Affine laø toå hôïp cuûa caùc pheùp bieán ñoåi:
♦ Tuyeán tính
♦ Tònh tieán
• Caùc tính chaát
♦ Goác toaï ñoä khoâng laø ñieåm baát ñoäng.
♦ AÛnh cuûa ñöôøng thaúng laø ñöôøng thaúng.
♦ AÛnh cuûa caùc ñöôøng thaúng song song laø caùc ñöôøng thaúng
song song.
♦ Baûo toaøn tæ leä khoaûng caùch
♦ Toå hôïp caùc pheùp bieán ñoåi coù tính phaân phoái
Caùùc pheùùp bieáán ñoååi Affine cô sôûû
• Pheùp bieán ñoåi Affine coù theå xem laø toå hôïp cuûa caùc pheùp
bieán ñoåi cô sôû:
♦ Tònh tieán
♦ Tæ leä (taâm tæ leä ñaët taïi goác toaï ñoä)
♦ Quay quanh truïc x
♦ Quay quanh truïc y
♦ Quay quanh truïc z
♦ Ñoái xöùng qua truïc x, y, z*
♦ Bieán daïng* (taâm bieán daïng ñaët taïi goác toaï ñoä)
( ) ( )
=
1
0
0
0
.11'''
zyx trtrtr
ihg
fed
cba
zyxzyx
tæ leä, quay, bieán daïng tònh tieán
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 5/11
• Pheùp tònh tieán
=
1TrTrTr
0100
0010
0001
)Tr,Tr,Tr(Tr
zyx
zyx
• Pheùp bieán ñoåi tæ leä
=
1000
0s00
00s0
000s
)s,s,S(s
z
y
x
zyx
Khi sx=sy=sz: pheùp ñoàng daïng
• Pheùp quay quanh truïc z
• Pheùp quay quanh truïc x
=
1000
0)cos()sin(-0
0)sin()cos(
00
)R(x,
θθ
θθθ 0
01
• Pheùp quay quanh truïc y
=
1000
0)cos(0)sin(
00
0)sin(-)cos(
)R(y,
θθ
θθ
θ 10
0
y
z
x
y
z
x
(x,y,z)
(x',y',z')
tr =(trx,try,trz)
y
z
x
=
1000
0100
00)cos()sin(-
00)sin()cos(
)R(z,
θθ
θθ
θ
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 6/11
• Caùch xaùc ñònh chieàu döông trong caùc pheùp quay
Caùc ñònh nghóa veà chieàu quay ñöôïc duøng chung cho caû heä
toïa ñoä theo quy öôùc baøn tay phaûi vaø baøn tay traùi. Cuï theå
chieàu döông ñöôïc ñònh nghóa nhö sau:
♦ Quay quanh truïc x: töø truïc döông y ñeán truïc döông z.
♦ Quay quanh truïc y: töø truïc döông z ñeán truïc döông x.
♦ Quay quanh truïc z: töø truïc döông x ñeán truïc döông y.
• Ví duï, xeùt treân heä toaï ñoä baøn tay traùi, khi nhìn doïc töø
phía truïc quay veà goác toaï ñoä, chieàu döông seõ laø chieàu
ngöôïc chieàu kim ñoàng hoà
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 7/11
• Pheùp ñoái xöùng qua maët phaúng yOz, zOx vaø xOy
−
=
1000
0100
0010
0001
Mr(x)
−
=
1000
0100
0010
0001
Mr(y)
−
=
1000
0100
0010
0001
Mr(z)
• Pheùp ñoái xöùng qua truïc x, y vaø z
−
−
=
1000
0100
0010
0001
xM
−
−
=
1000
0100
0010
0001
yM
−
−
=
1000
0100
0010
0001
zM
• Pheùp bieán daïng
=
1000
01hh
0h1h
0hh1
Sh
yzxz
zyxy
zxyx
y
z
x
y
z
x
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 8/11
Caùùc pheùùp bieáán ñoååi Affine toåång quaùùt
• Toå hôïp caùc pheùp bieán ñoåi Affine laø moät pheùp bieán ñoåi
Affine.
• Moïi pheùp bieán ñoåi Affine ñeàu coù theå phaân raõ thaønh toå
hôïp caùc pheùp bieán ñoåi Affine cô sôû.
Pheùùp tæ leää vôùùi taââm baáát kyøø
• Pheùp tæ leä vôùi taâm ñaët taïi ñieåm (xf, yf, zf) coù theå xeùt nhö
toå hôïp cuûa caùc pheùp bieân ñoåi cô sôû:
♦ Tònh tieán ñieåm baát ñoäng ( )fff zyx ,, veà goác toïa ñoä.
♦ Thöïc hieän pheùp bieán ñoåi tæ leä vôùi taâm laø goác toaï ñoä.
♦ Tònh tieán ngöôïc ñieåm baát ñoäng töø goác toïa ñoä trôû veà vò trí
ban ñaàu.
• Ma traän bieán ñoåi seõ laø:
( ) ( ) ( )
=
1111
000
000
000
fzfyfx
z
y
x
zyxf
z-sy-sx-s
s
s
s
),s,s(sS
Pheùùp quay quanh moäät truïïc baáát kyøø
• Giaû söû truïc quay xaùc ñònh bôûi 2 ñieåm P1 vaø P2 (chieàu
döông höôùng töø P1 ñeán P2 theå hieän bôûi vector k).
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 9/11
• AÙp duïng qui taéc phaân raõ, ta coù theå bieåu dieãn quay quanh
k moät goùc θ thaønh daõy caùc pheùp bieán ñoåi cô sôû sau:
♦ Tònh tieán truïc k veà goác toïa ñoä: Tr(-P0) (thaønh truïc k')
♦ Quay quanh truïc x ñeå ñaët truïc k' naèm treân maët phaúng
xOz: R(x,α) (thaønh truïc k'').
♦ Goùc quay ñöôïc xaùc ñònh döïa treân chieáu cuûa k' leân maët
phaúng yOz. Ta khoâng caàn tính α cuï theå. Thay vaøo ñoù ta
tính sin(α) vaø cos(α) moät caùch tröïc tieáp.
10
10
PP
PP
k = ,
2
z
2
y kkd +=
( ) ( )
d
k
sin,
d
kcos yz == αα
♦ Quay quanh truïc y ñeå ñöa truïc k' veà truïc z: R(y,-β). Töông
töï böôùc tröôùc, ta khoâng caàn tính cuï theå β.
♦ Thöïc hieän pheùp quay quanh truïc z moät goùc θ: R(z,θ)
♦ Thöïc hieän chuoãi caùc pheùp bieán ñoåi ngöôïc laïi quaù trình
treân.
( ) d,dβcos ==
1
( ) xx kksin == 1β
x
y
z
d
"k
P0
P1
k
'k
ky α
x
y
z
kx
"kβ
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 10/11
• Nhö vaäy, pheùp quay quanh 1 truïc baát kyø coù theå ñöôïc
phaân raõ thaønh chuoãi caùc bieán ñoåi cô sôû sau:
Tr(-P0) R(x,α) R(y,-β) R(z, θ) R(y, β) R(x, -α) Tr(P0)
Modeling transformation
• Bieán ñoåi töø Heä toïa ñoä ñoái töôïng sang Heä toïa ñoä theá giôùi
thöïc.
Front-Wheel
System
Tractor
System
World
yW
zW
xW
yfW
zfW
xfW
xt
yt
zt
Pheùùp bieáán ñoååi Heää toaïï ñoää
• Caàn thöïc hieän moät pheùp quay vaø moät pheùp tònh tieán (goïi
laø Rigid boby transformation).
• Neáu chuyeån ñoåi giöõa hai heä toaï ñoä baøn tay traùi vaø baøn
tay phaûi thì caàn theâm moät pheùp ñoái xöùng nöõa.
ÑOÀ HOÏA MAÙY TÍNH
Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 11/11
Rigid boby transformation
• Bao goàm pheùp tònh tieân vaø pheùp quay vaø caùc toå hôïp cuûa
chuùng.
• Do khoâng laøm thay ñoåi hình daïng vaø kích thöôùc ñoái
töôïng, chæ laøm thay ñoåi vò trí, phöông höôùng cuûa chuùng
trong khoâng gian.
Ví duï veà pheùp tònh tieán
Ví duï veà pheùp quay
Các file đính kèm theo tài liệu này:
- Transf3D.pdf