Đăng ký Đăng nhập
Trang chủ Công nghệ thông tin An ninh bảo mật Bài giảng đồ họa máy tính các phép biến đổi 3 chiều...

Tài liệu Bài giảng đồ họa máy tính các phép biến đổi 3 chiều

.PDF
11
394
146

Mô tả:

ÑOÀ HOÏA MAÙY TÍNH 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. Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 1/11 ÑOÀ HOÏA MAÙY TÍNH 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. homogeneous (x,y,z,w) projected homogeneous (x/w,y/w,z/w,1) Descartes (x/w,y/w,z/w) w w=1 x (x, y, z, 1)Homogeneous • (x, y, z)Descartes • (x, y, z, w)Homogeneous (x/w, y/w, z/w)Descartes (w ≠ 0). Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 2/11 ÑOÀ HOÏA MAÙY TÍNH 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ä a d g æa d gö ç (x' y' z') = (x y z)ç b e h vôùi b e h ≠ 0 çc f i c f i è ♦ 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. T(s1P1 + s2P2) = s1T(P1) + s2T(P2) ♦ 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. y (x',y',z') (x,y,z) tr =(trx,try,trz) x z Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 3/11 ÑOÀ HOÏA MAÙY TÍNH 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æ leä, quay, bieán daïng ♦ Tònh tieán (x' y' z' 1) = (x • Caùc tính chaát æ a ç ç d y z 1).ç g ç ç trx è tònh tieán b e h try c f i trz 0ö 0 0 1 ♦ 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ä) Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 4/11 ÑOÀ HOÏA MAÙY TÍNH • Pheùp tònh tieán y é 1 ê 0 Tr(Trx , Try , Trz ) = ê ê 0 ê ëê Trx 0 0 1 0 Try 0 1 Trz 0ù (x',y',z') 0 0 1 tr =(trx,try,trz) (x,y,z) x • Pheùp bieán ñoåi tæ leä és x ê0 S(s x , s y , s z ) = ê ê0 ê ë0 0 sy 0 0 0 0 sz 0 z y 0ù 0úú 0ú ú 1 Khi sx=sy=sz: pheùp ñoàng daïng x z • Pheùp quay quanh truïc z é cos(θ ) sin(θ ) 0 0ù ê- sin(θ ) cos(θ ) 0 0ú ú R(z,θ ) = ê ê 0 0 1 0ú ê ú 0 0 1 ë 0 y x z • Pheùp quay quanh truïc x 0 0 0ù é1 ê0 cos(θ ) sin(θ ) 0ú ú R(x,θ ) = ê ê0 - sin(θ ) cos(θ ) 0ú ê ú 0 0 1 ë0 Döông Anh Ñöùc, Leâ Ñình Duy • Pheùp quay quanh truïc y écos(θ ) ê 0 R(y, θ ) = ê êsin(θ ) ê ë 0 0 - sin(θ ) 1 0 0 cos(θ ) 0 0 0ù 0úú 0ú ú 1 Caùc pheùp bieán ñoåi 3 chieàu 5/11 ÑOÀ HOÏA MAÙY TÍNH • 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à Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 6/11 ÑOÀ HOÏA MAÙY TÍNH • Pheùp ñoái xöùng qua maët phaúng yOz, zOx vaø xOy é− 1 ê0 Mr(x) = ê ê0 ê ë0 0 1 0 0 0 0 1 0 0 0 0 1 ù ú ú ú ú é1 ê0 Mr(y) = ê ê0 ê ë0 0 −1 0 0 0 0 1 0 0 0 0 1 ù ú ú ú ú é1 ê0 Mr(z) = ê ê0 ê ë0 0 1 0 0 0 0 −1 0 0 0 0 1 ù ú ú ú ú • Pheùp ñoái xöùng qua truïc x, y vaø z é1 ê0 Mx = ê ê0 ê ë0 0 0 −1 0 0 −1 0 0 0 0 0 1 ù é− 1 ú ê ú My = ê 0 ú ê0 ú ê ë0 0 1 0 0 0 0 −1 0 0ù é− 1 0 ê 0 −1 ú 0ú Mz = ê ê0 0ú 0 ú ê 1 0 ë0 0 0 1 0 0 0 0 1 ù ú ú ú ú • Pheùp bieán daïng é 1 êh Sh = ê xy ê h xz ê ë 0 h yx 1 h yz 0 h zx h zy 1 0 0ù 0úú 0ú ú 1 y y x z Döông Anh Ñöùc, Leâ Ñình Duy x z Caùc pheùp bieán ñoåi 3 chieàu 7/11 ÑOÀ HOÏA MAÙY TÍNH 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 (x f , y f , z f ) 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ø: æ sx ç ç 0 S f (s x ,s y ,s z ) = ç 0 ç ç (1-s )x x f è 0 sy 0 (1-s y )y f 0 0 sz (1-s z )z f 0ö ÷ 0÷ 0÷ ÷ 1 ÷ø 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). Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 8/11 ÑOÀ HOÏA MAÙY TÍNH • 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. y P1 P0 d k= k k' ky α x k" P0 P1 , P0 P1 d = k 2y + k 2z cos(α ) = ky kz , sin(α ) = d d z ♦ 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. y z β kx Döông Anh Ñöùc, Leâ Ñình Duy k" x cos(β ) = d = d, 1 sin(β ) = kx = kx 1 Caùc pheùp bieán ñoåi 3 chieàu 9/11 ÑOÀ HOÏA MAÙY TÍNH • 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. yt Tractor System yW xt zt zW World xW yfW zfW xfW Front-Wheel System 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. Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 10/11 ÑOÀ HOÏA MAÙY TÍNH 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 Döông Anh Ñöùc, Leâ Ñình Duy Caùc pheùp bieán ñoåi 3 chieàu 11/11
- Xem thêm -

Tài liệu liên quan