Đồ hoạ máy tính - Các phép biến đổi 3 chiều - Dương Anh Đức

 

• Hệ tọa độ theo quy ước bàn tay phải: để bàn tay phải

sao cho ngón cái hướng theo trục Z, khi nắm tay lại, các ngón tay chuyển động theo hướng từ trục x đến trục y.

• Hệ tọa độ theo quy ước bàn tay trái để bàn tay phải sao

cho ngón cái hướng theotrục Z, khi nắm tay lại, các ngón tay chuyển động theo hướng từ trục x đến trục y.

Hệ toạ độ thuần nhất (Homogeneous Coordinates)

• Mỗi điểm (x, y, z) trong không gian Descartes được biểu

diễn bởi một bộ bốn tọa độ trong không gian 4 chiều thu gọn (hx, hy, hz, h). Người ta thường chọn h=1.

 

pdf11 trang | Chia sẻ: thiennga98 | Lượt xem: 537 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Đồ hoạ máy tính - Các phép biến đổi 3 chiều - Dương Anh Đức, để 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

File đính kèm:

  • pdfTransf3D.pdf
Giáo án liên quan