Giáo trình Đồ họa máy tính - Chương 5: Đồ họa ba chiều

pdf 29 trang huongle 2160
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Đồ họa máy tính - Chương 5: Đồ họa ba chiều", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_do_hoa_may_tinh_chuong_5_do_hoa_ba_chieu.pdf

Nội dung text: Giáo trình Đồ họa máy tính - Chương 5: Đồ họa ba chiều

  1. 4/2/2012 ơ aa 5.1. Gi i thi u ha ba chi u. 5.2. Các phép bi n i ba chi u. a 5.3. Quan sát ba chi u 5.4. Các ch liên quan. ơ aa ơ aa 5.1. Gi i thi u ha ba chi u. 5.1. Gi i thi u ha ba chi u.  Vi các ng dng hình nh ng  Ta x,y,z. (animation) -> cn phát sinh chuy n ng y liên tc ca các i t ng hi n th trên màn hình. Các thao tác trên c th c hi n bng phép bi n i các im ta trên màn hình. Các phép bi n i cơ bn bao gm tnh ti n, co dãn và xoay. x z ơ a a ơ a a 5.2. Các phép bi n i ba chi u. 5.2. Các phép bi n i ba chi u. 5.2.1. Các phép bi n i ba chi u cơ bn. 5.2.1. Các phép bi n i ba chi u cơ bn. 1) i s Véct ơ 5.2.2. Các phép bi n i ba chi u khác.  Véc tơ ư c xác nh bng ln, ph ươ ng chi u và nó c lp vi mi h tr c to .  Bi u di n véc tơ: on th ng có hư ng gi a 2 im xác nh. 1
  2. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 1) i s Véct ơ 1) i s Véct ơ  Cng hai véc tơ: V1 + V2 = (x 1+x 2, y1+y 2, z1+z 2)  Nhân hai véc tơ: V1 .V2 = (x 1.x2, y1.y2, z1.z2)  dài véc tơ: |V| = ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 1) i s Véct ơ 1) i s Véct ơ  Tích vô hư ng ca 2 véc tơ có th ư c  Tích có hư ng ca hai véc tơ V1 x V2 s là hi u là tích ca mt véc tơ vi ánh x ca véc tơ vuông góc vi hai véc tơ ti gc. véc tơ khác trên nó: V1.V2 = |V 1|.|V 2|cos . Hư ng ca véc tơ kt qu do véc tơ ơ n v u xác nh. V1xV 2 = u|V 1||V 2|sin . ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 1) i s Véct ơ 1) i s Véct ơ  nh th c cho véc tơ vi các thành ph n nh ư sau:  Các véc tơ ơ n v ư c xác nh theo tng tr c ta bi u di n tích có hư ng. u x u y u z V1 xV2 = x1 y1 z1 x2 y2 z2 V1xV2=ux( 1zy 2− 1yz 2)+uy( 1xz 2− 1zx 2)+uz( 1yx 2− 2yx 1) 2
  3. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 1) i s Véct ơ 1) i s Véct ơ  ơ ơ ư ư  Vi véct ơ ơ n v: Gi s p=OP bt k, các Véc t n v u theo h ng p c xác góc α, β, γ gi a OP và hư ng tr c x, y, z nh: u = p/|p| . dươ ng.  Véc tơ này có ba thành ph n bi u di n hàm cosin ca góc to bi véc tơ p và các  Nu véc tơ ơ n v trên các tr c là i, j, k thì tr c ta x, y, z sao cho: ơ ư ư m i véc t p c bi u di n nh sau: u= icos α + jcos β + kcos γ và th a mãn: p = pxi + pyj + pzk. cos 2α + cos 2β + cos 2γ = 1. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 2) Các pháp bi n i ba chi u: 2) Các pháp bi n i ba chi u:  Phép dch chuy n.  Ph ươ ng pháp dch chuy n, co dãn, xoay  Phép co dãn. các i tư ng 3 chi u ư c xem nh ư m rng ca các ph ươ ng pháp 2 chi u. Cng  Phép xoay. nh ư bi n i 2 chi u, ph ươ ng trình bi n i hình hc ư c bi u di n bng các ma tr n bi n i. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. a) Phép dch chuy n. a) Phép dch chuy n.   Dch chuy n 1 im t (x,y,z) n (x',y',z') Các tham s Tx, Ty, Tz ch ra kho ng cách nh ư trên hình v có ma tr n bi n i nh ư dch chuy n, ư c gán giá tr th c bt k. T ma tr n trên ta có th vi t: sau: x'=x+Tx, y'=y+Ty, z'=z+Tz.  Dch i tư ng là dch mi im ca chúng trong ta ba chi u bng véc tơ dch chuy n T=(Tx, Ty, Tz). 3
  4. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. b) Phép co dãn . b) Phép co dãn .  Ma tr n co dãn c a im so v i g c h t a  Cách vi t khác c a ph ươ ng trình trên nh ư ba chi u: sau: x'=x.Sx, y'=y.Sy, z'=z.Sz.  Trong ó tham s : Sx, Sy, Sz có giá tr th c b t k . ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. b) Phép co dãn: quanh im bt k. b) Phép co dãn: quanh im bt k. y y  Ma tr n bi n i s là: (x F, y F, z F) (x F, y F, z F) z x z x b) a) y y (x F, y F, z F) (x F, y F, z F) z x z x c) d) ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay. c) Phép xoay.  th c hi n xoay i tư ng thì ph i ch n  Quy nh: xoay ng ư c chi u kim ng h tr c và góc xoay. Trong ng dng 2 chi u theo tr c s to thành góc dơ ng nu ta thì tr c xoay luôn vuông góc vi mt ph ng nhìn vào gc ta t phía na tr c xy. Trong 3 chi u thì có th ch n hư ng dươ ng. bt k xoay. Tr c xoay d qu n lý nh t là tr c song song vi các tr c ta . 4
  5. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay. c) Phép xoay.  M rng ph ươ ng trình xoay tr c z hai  Xoay quanh z ư c bi u di n bi: chi u thành 3 chi u nh ư sau: x’ = xcos θ – ysin θ y’ = xsin θ + ycos θ z’ = z trong ó, tham s θ là góc xoay. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay. c) Phép xoay.  Tươ ng t xoay quanh tr c x ta có:  Xoay quanh x ư c bi u di n bi: y’ = ycos θ – zsin θ z’ = ysin θ + zcos θ x’ = x trong ó, tham s θ là góc xoay. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay. c) Phép xoay.  Tươ ng t xoay quanh tr c y ta có:  Xoay quanh y ư c bi u di n bi: z’ = zcos θ – xsin θ x’ = zsin θ + xcos θ y’ = y trong ó, tham s θ là góc xoay. 5
  6. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay: Xoay quanh tr c bt k. c) Phép xoay: Xoay quanh tr c bt k.  Tr ư ng hp 1: Tr c xoay song song vi  Tr ư ng hp 1: Tr c xoay song song vi tr c ta . tr c ta thì:  Tr ư ng hp 2: Tr c xoay là tr c trong 1) Dch chuy n i tư ng có tr c xoay không gian ba chi u. song song v tr c ta . 2) Th c hi n xoay. 3) Dch chuy n ng ư c li v trí ban u. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. c) Phép xoay: Xoay quanh tr c bt k. 5.2. Các phép bi n i hình hc ba chi u.  Tr ư ng hp 2: Tr c xoay là tr c trong không gian C1) Tr ư ng hp 2: Tính ma tr n chuy n i ba chi u. bng phép toán Véct ơ.  Dch i t ng sao cho tr c xoay i qua gc ta .   Xoay i t ng sao cho tr c xoay trùng vi 1 trong các Gi s ch n tr c z xoay theo nó và tr c tr c ta . xoay ư c xác nh bi hai im  Th c hi n xoay. P1(x1,y1,z1), P2(x2, y2, z2).  Áp dng xoay ng c tr c xoay tr v h ng xoay ban u.  Áp dng chuy n dch ng c em tr c xoay v v trí ban u. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  Hai im P1, P2 trên ây xác nh véc tơ V  Trong ó: các ph n t a, b, c ca véc tơ u nh ư sau: là cosin hư ng ca véc tơ V. V=(x2 -x1, y2 -y1, z2- z1)  Véc tơ ơ n v u theo tr c xoay s ư c lp: 6
  7. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  B1: Dch chuy n i tư ng v gc.  B2: Xoay tr c xoay trùng vi tr c z, ta th c hi n hai bi n i sau:  Xoay quanh tr c x ư a u v mt ph ng xz.  Xoay quanh tr c y ư a u v tr c z. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  Xây dng ma tr n bi n i cho xoay quanh  Ta có: u’.uz = |u’|.|u z|.cos = ? tr c x bng cách xác nh góc xoay ư a Vì: u’.uz =0.0+b.0+c.1=c u vào mt ph ng xz. ó là góc gi a ánh x |u’| = (02+ b2 + c2)1/2 = d. u trong mt yz và tr c z dươ ng. Nu gán |u | = 1. ánh x ca u trong yz là u' =(0, b, c) thì cos z -> cos = c/d. ca góc xoay α ư c xác nh bng tích vô hư ng ca u' và uz = (0, 0, 1) theo tr c z: ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  ươ ư T ng t : sin c xác nh b ng tích có  Ta có ma tr n xoay quanh x là: hư ng ca u’ và uz. u’xu z = ux.|u’|.|u z|.sin = ux.d.sin . Trong ó: ux uy uz u’xu z = 0 b c = ux.b -> sin = b/d. 0 0 1 7
  8. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  Ti p theo, ta xác nh ma tr n bi n i xoay  Ta có: u’’.u = |u’’|.|u |.cos = ?. véct ơ ơ n v trong mt ph ng xz quanh tr c y vào z z tr c dươ ng z. Hư ng ca véc tơ ơ n v trong mt Vì: u’’.uz =a.0+0.0+d.1=d xz (có tên u" ). Vì xoay quanh tr c y nên gi |u’’| = (a 2 + 02 + d2) = nguyên a cho x, Thành ph n z có giá tr d (kích = (a 2 + b2 + c2)1/2 = 1. th ư c ca u' ) vì véc tơ u' xoay quanh tr c y. Thành ph n y ca u" là 0 vì véc tơ nm trên mt |u z| = 1. ph ng xz. -> cos = d. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  Tươ ng t:  Ta có ma tr n xoay quanh y là (góc xoay u’’xu z = -uy.|u’’|.|u z|.sin = -uy.sin . âm): Trong ó: ux uy uz u’’xu z = a 0 d = -uy.a -> sin = a. 0 0 1 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C1) Tr ư ng hp 2: Phép toán Véct ơ. C1) Tr ư ng hp 2: Phép toán Véct ơ.  B3: Sau ó xoay quanh tr c z mt góc thì  B4: Sau ó xoay ng ư c theo y và x. có:  B5: Dch chuy n ng ư c v im ban u.  Ta có ph ươ ng trình tng quát nh ư sau: R( )=T.Rx( ).Ry( ).Rz( ).Ry( )-1.Rx -1().T-1. 8
  9. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C2) Tr ư ng hp 2: Tính ma tr n chuy n i C2) Tr ư ng hp 2: Tính ma tr n chuy n i bng hình hc. bng hình hc. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C2) Tr ư ng hp 2: Tính bng hình hc. C2) Tr ư ng hp 2: Tính bng hình hc.  B1: Tnh ti n tr c bt k sao cho mt u cu i ca  B1: Tính ma tr n dch chuy n nh ư sau: nó trùng vi gc, nh ư hình 1.  B2: Th c hi n xoay quanh tr c x và y tr c bt k trùng vi tr c z, nh ư hình 2.  B3: Xoay quanh tr c z góc θ, nh ư hình 2.  B4: Xoay ng ư c li quanh tr c y và x.  B5: Tnh ti n ng ư c ư a tr c v v trí ban u. ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C2) Tr ư ng hp 2: Tính bng hình hc. C2) Tr ư ng hp 2: Tính bng hình hc.  B2: Ta ma tr n góc xoay , chi u tr c  T phép chi u ta có: xoay trên mt ph ng yz: sin =b/d, cos =c/d, trong ó d=(b 2+c 2)1/2.  Vy ta có ma tr n: 9
  10. 4/2/2012 ơ a a ơ a a 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C2) Tr ư ng hp 2: Tính bng hình hc. C2) Tr ư ng hp 2: Tính bng hình hc.  Xoay quanh y, góc φ ta có:  B3: Xoay quanh tr c z ta có: sin =a/l, cos =d/l, trong ó l=(a 2+b 2+c 2)1/2.  Vy ta có ma tr n: ơ a a ơ aa 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. C2) Tr ư ng hp 2: Tính bng hình hc. 3.2.2. Các phép bi n i ba chi u khác.  B4: Xoay ng ư c li quanh tr c y và x. a) Phép i xng:  B5: Dch chuy n li v trí ban u.  Phép i xng: chuy n i h th ng ta t ph i sang trái hay ng ư c li. Bi n i này làm thay i tr c z còn gi nguyên x, y. Bi u di n ma tr n ph n chi u ca các im so vi mt ph ng xy s nh ư sau: ơ aa ơ aa 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 5.2.2. Các phép bi n i ba chi u khác. 5.2.2. Các phép bi n i ba chi u khác. a) Phép i xng: bi n i ta z. a) Phép i xng:  Ma tr n bi n i ta x và y ly i xng qua mt ph ng yz, xz cng tươ ng t. 10
  11. 4/2/2012 ơ aa ơ aa 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 5.2.2. Các phép bi n i ba chi u khác. 5.2.2. Các phép bi n i ba chi u khác. a) Phép i xng: a) Phép i xng:  Phép i xng qua tr c x,y,z nh ư sau:  Phép ly i xng qua gc ta (0,0,0): ơ aa ơ aa 5.2. Các phép bi n i hình hc ba chi u. 5.2. Các phép bi n i hình hc ba chi u. 5.2.2. Các phép bi n i ba chi u khác. 5.2.2. Các phép bi n i ba chi u khác. a) Phép bi n dng: a) Phép bi n dng:  M rng bi n dng 2D thành 3D, ma tr n  Ma tr n bi n dng tng quát nh ư sau: bi n dng theo z nh ư sau: ơ aa ơ aa 5.3. Quan sát ba chi u. 5.3. Quan sát ba chi u. 5.3.1. Gi i thi u. 5.3.1. Gi i thi u.  Ð ha 3 chi u - 3D computer graphics bao gm  Quan sát 3 chi u: Ph c tp hơn vì có nhi u vi c b xung kích th ư c v chi u sâu ca i la ch n hi n th . Hay còn có kh nng tư ng, cho phép ta bi u di n chúng trong th gi i quan sát t v trí ng trong tp i tư ng. th c mt cách chính xác và sinh ng hơn. Hơn na, mô t ba chi u i tư ng ph i  3D Graphics là vi c chy n th gi i t nhiên dư i ư c chi u trên mt dt ca thi t b ra. dng các mô hình bi u di n trên các thi t b hi n th thông qua k thu t tô chát (rendering). 11
  12. 4/2/2012 ơ aa ơ aa 5.3. Quan sát ba chi u. 5.3. Quan sát ba chi u. 5.3.1. Gi i thi u. 5.3.2. Các phép chi u.  nh ngh a v phép chi u: Phép chi u là phép chuy n i nh ng im ca i tư ng trong h  Chi u song song (parallel projection ). th ng ta n chi u thành nh ng im trong  Chi u ph i cnh (perspective projection ). h th ng ta có s chi u nh hơn n.  nh ngh a v hình chi u: nh ca i tư ng trên mt ph ng chi u ư c hình thành t phép chi u bi các ư ng th ng gi là tia chi u (projector) xu t phát t mt im gi là tâm chi u (center of projection) i qua các im ca i tư ng giao vi mt chi u (projection plan). ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u.  Chi u song song (parallel projection ) là phép chi u toàn b các im i tư ng ư c chi u trên mt ph ng theo các ư ng song song.  Chi u ph i cnh (perspective projection ) là chi u theo ư ng hi t (converge ) n v trí gi là tâm phép chi u. ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u.  Phép chi u song song : gi kích th ư c a) Phép chi u song song. tươ ng i ca i tư ng. Dùng quan sát  Tâm phép chi u t ti vô cc sao cho tt chính xác các mt khác nhau ca i tư ng. c các tia chi u song song vi nhau. Ph Nh ưng không cho phép bi u di n th c i tư ng 3-D trên mt 2D. thu c vào góc tia chi u v i m t ph ng chi u mà ta chia nó ra các lo i sau:  Chi u ph i cnh cho quan sát th c nh ưng không gi ư c kích th ư c tươ ng i. on  Chi u tr c giao (orthographic ): nu tia chi u th ng xa mt chi u hơn s có kích th ư c nh vuông góc mt ph ng chi u. hơn.  Chi u xiên (oblique ): nu tia chi u không vuông góc vi mt chi u. 12
  13. 4/2/2012 ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. a) Phép chi u song song. a) Phép chi u song song.  Chi u tr c giao : s dng to ra quan sát i tư ng t trên, sư n hay nh. Trong v k thu t th ư ng s dng phép chi u này vì góc, dài ư c mô t chính xác và có th o ư c t bn v. ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. a) Phép chi u song song. a) Phép chi u song song.  Phép chi u tr c giao cho quan sát ư c nhi u mt ca i tư ng ư c gi là chi u tr c giao tr c o (axonometric) . Ph ươ ng pháp hay dùng nh t ca lo i này ư c gi là chi u tr c o hay phép chi u cùng kích th c (isometric ). Phép chi u isometric có ư c nh ch n mt ph ng chi u sao cho chúng ct c ba tr c ta nh ngh a i tư ng vi cùng kho ng cách t gc ta . ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. a) Phép chi u song song. a) Phép chi u song song.  Phép chi u xiên : chi u im i tư ng theo  Ph ươ ng trình bi n i th c hi n phép chi u tr c giao song song: vi mi im (x, y, z) có im ư ng song song mà không vuông góc vi mt chi u trên mt quan sát (m t ph ng z=0 trong thí chi u. Chi u xiên ca im (x, y, z) theo ư ng d này) s là: x = x chi u n im (x p, yp). Gi ta chi u tr c giao p ca chúng là (x, y). ư ng chi u xiên s to ra yp = y góc α vi ư ng ni (x p,y p) và (x,y) trên mt zp = 0. chi u. Gi s on này có dài L và to thành góc φ vi ư ng nm ngang trên mt chi u. 13
  14. 4/2/2012 ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. a) Phép chi u song song. a) Phép chi u song song.  Ph ươ ng trình chi u xiên s là:  Ta chi u s là: xp = x + Lcos φ tang = z/L=1/L . Trong ó L là dài t yp = y + Lsin φ 1 1 (x,y) n (xp,yp) khi z = 1 -> L=z.L1. xp = x + x.L 1.cos φ yp = y + z.L 1.sin φ  Ma tr n bi n i s là: [x p yp zp 1]=[xyz1].Pr. ơ aa ơ aa 5.3.2. Các phép chi u. a) Phép chi u song song. 5.3.2. Các phép chi u. a) Phép chi u song song.  Ta có P : r  Giá tr ca góc φ không ph thu c vào L1. 0  Nu L1 = 0 (khi α=90 ) thì ta s có chi u tr c giao.  Khi L1 ≠ 0 thì ta có chi u xiên, chúng th ư ng s dng φ=45 0 hay φ=30 0.  Nu L1=1 (α=45 0) ta có phép chi u xiên u (cavalier ).  Nu L1=1/2 (α=63.40) ta có phép chi u xiên cân (cabinet ). ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. b) Phép chi u ph i cnh. b) Phép chi u ph i cnh.  có chi u ph i cnh i tư ng 3-D, ta chi u các im theo ư ng chi u sao cho chúng s gp nhau ti tâm chi u (vanishing point) trên mt quan sát. Ph thu c vào tng s tâm chi u mà chia chi u ph i cnh thành 1, 2 hay 3 im chính (tâm chi u). 14
  15. 4/2/2012 ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. b) Phép chi u ph i cnh. b) Phép chi u ph i cnh.  1 tâm chi u khi mt chi u song song vi 2 tr c chính. 2 tâm chi u khi mt chi u song song vi 1 tr c chính. 3 tâm chi u khi mt chi u không song song vi bt k tr c chính nào. ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. b) Phép chi u ph i cnh. b) Phép chi u ph i cnh.  Tâm chi u trên tr c z có giá tr Zcp . (Có th  Gi s ta có im P(x, y, z) trong không ch n tâm chi u bt k theo yêu cu). gian. Hình chi u ph i cnh ca im P trên mt ph ng xy là im P’(x’, y’, z’) ư c xác nh nh ư sau :  Nhìn theo tr c y v phía gc ta ta có: ơ aa ơ aa 5.3.2. Các phép chi u. 5.3.2. Các phép chi u. b) Phép chi u ph i cnh. b) Phép chi u ph i cnh.  Nhìn theo tr c x v phía gc ta : z x' cp y' z = = cp x zcp −z y zcp −z x y x'= y'= z z 1− 1− zcp z cp 15
  16. 4/2/2012 ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.2. Các phép chi u.  Phát sinh quan sát i tư ng 3-D tươ ng t b) Phép chi u ph i cnh. ch p nh i tư ng. Ch p nh t góc ,  Ma tr n ph i cnh s là: kho ng cách khác nhau. 1 0 0 0   Ý tư ng này trùng hp vi h th ng ha   0 1 0 0  máy tính. Ta yêu cu ng ư i dùng xác nh 1 0 0 0 −  im t ó quan sát i tư ng.  zcp   Xác nh mt ph ng quan sát (view plane)   0 0 0 1   Xác nh kh i quan sát (view volumes) ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.3. Bi n i quan sát.  Xác nh mt ph ng quan sát : Ng ư i yw dùng ch ra quan sát c th cho ho t cnh yv bng nh ngh a mt ph ng quan sát (view x w x plane ). Chúng ư c xây dng t h th ng zw v z ta quan sát. v ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.3. Bi n i quan sát.  Hư ng ca mt ph ng quan sát ư c xác  Xác nh mt ph ng quan sát : xây nh bi pháp tuy n ca mt ph ng quan dng h ta quan sát, ng ư i s dng sát (véc tơ vuông góc mt quan sát) N. Véc ly v trí ta th gi i th c làm im tơ này xác nh chi u dươ ng cho tr c z ca tham chi u quan sát (view reference point ); h th ng ta quan sát. Véc tơ ng V ó s là ta gc ca h th ng ta ư c gi véc tơ quan sát lên (view up ); quan sát. chúng xác nh hư ng dươ ng ca tr c y. 16
  17. 4/2/2012 ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.3. Bi n i quan sát. V yv  Véc tơ pháp tuy n N ư c thi t lp bng MÆt ph¼ng quan s¸t cách xác nh v trí ta so vi gc ta zv N th gi i th c. Hình v mô t hai hư ng ca mt ph ng quan sát theo pháp tuy n cho xv tr ư c. V trí (-1,0,0) s hư ng mt ph ng §iÓm tham chiÕu quan s¸t quan sát, v trí (-1,-1,0) cho hư ng khác. ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.3. Bi n i quan sát. yv MÆt ph¼ng quan s¸t yv  Xác nh véc tơ V theo cách tươ ng t.  ôi khi s dng véc tơ U ch ra hư ng x N N ca ta quan sát. H th ng quan sát s là N h th ng uvn và mt ph ng quan sát ư c gi (-1,0,0) xv xv (0,0,0) N (0,0,0) là mt ph ng uv . (-1,-1,0)  Ta có th s dng h th ng t trái hay t ph i zv zv làm h ta quan sát. Quan sát t ph i a) b) th ư ng ư c s dng vì chúng có cùng hư ng vi ta th gi i th c. ơ aa ơ aa 5.3.3. Bi n i quan sát. 5.3.3. Bi n i quan sát . V  Ph n chi u so vi mt xy, o du ta z làm thay V yv yv i h th ng ta quan sát trái sang h th ng quan U MÆt ph¼ng U chiÕu N sát ph i. N zv  Dch chuy n im tham chi u quan sát n gc h ta th c. xv xv  Xoay quanh tr c x ca h ta th c em tr c ta quan sát z v mt xz ca h ta th c. b) zv a)  Xoay quanh tr c y ca ta th c cho n khi hai tr c z ca hai h trùng nhau.  Xoay quanh tr c ta th c z gán quan sát vào tr c ta th c y. 17
  18. 4/2/2012 ơ aa ơ aa 5.3.3. Bi n i quan sát . 5.3.3. Bi n i quan sát.  Kh i quan sát (view volumes) : Trong quan sát 3-D thì ca s chi u có nh hư ng tươ ng t; ca s ư c xác nh bi giá tr max và min ca tr c x, y trong mt quan sát.  S dng ca s chi u xác nh kh i quan sát. Hình dnh chính xác ca kh i quan sát ph thu c vào ki u chi u ca ng ư i dùng: ơ aa ơ aa 5.3.3. Bi n i quan sát . 5.3.3. Bi n i quan sát.  Vi phép chi u song song thì b n m t c a kh i quan sát hình thành ng.  Mt vài h ha hn ch tâm chi u trên  Phép chi u vi n c nh thì kh i quan sát nh ư hình tr c z ca h ta quan sát. Tng quát ct. thì tâm chi u có th bt k âu trong h Khèi quan s¸t Khèi quan s¸t yv (xw max ,yw max ) quan sát. Hai kh i quan sát vi n cnh ca zv hai v trí tâm chi u. Tr ư ng hp tâm chi u và i tư ng cùng phía nên không hi n th xv (xw min ,yw min ) Window T©m chiÕu gì trên mt quan sát. Window ơ aa ơ aa 5.3.3. Bi n i quan sát . 5.3.3. Bi n i quan sát .  Thông th ư ng ph i thêm 1 hay 2 mt ph ng xác nh kh i quan sát; gi chúng là mt ph ng gn và mt ph ng xa, to gi i hn chúng.  Hai mt này luôn song song vi mt quan sát  ư c xác nh bi các kho ng cách t mt quan sát  Vi các mt ph ng này ng ư i s dng có th gi i hn các ph n quan sát cho các thao tác liên quan n sâu. ó là ý tư ng tt cho chi u vi n cnh. Các i tư ng rt xa s chi u thành 1 im. 18
  19. 4/2/2012 ơ aa ơ aa 5.3.4. Ct xén. 5.3.4. Ct xén. Far  Ct xén : Thu t toán ct xén 3-D và lưu tr View Volume Near các on th ng trong kh i quan sát chi u lên mt quan sát. Toàn b các on th ng ngoài kh i quan sát s ư c lo i b. Ct xén ây có th ư c xây dng trên cơ s m rng ph ươ ng pháp ct xén on th ng, a giác hai chi u. ơ aa ơ aa 5.3.4. Ct xén. 5.3.4. Ct xén.  Thay th ta cu i on th ng vào  Nu ư ng có 2 im cu i ngoài mt gi i ph ươ ng trình mt ph ng gi i hn xác hn thì b qua; ng ư c li nu c 2 trong thì nh im cu i có trong gi i hn hay lưu li. không:  im giao (x1,y1,z1) ca on th ng vi  im cu i (x,y,z) ngoài mt gi i hn nu mt gi i hn khi Ax1+Bx1+Cx1+D=0. Ax+By+Cz+D > 0, trong ó A, B, C, D là các  Toàn b các i tư ng trong kh i quan sát tham s ca mt ph ng gi i hn. ư c chi u trên vùng nhìn.  Nu Ax +Bx+Cx+D <0 thì (x,y,z) s trong kh i quan sát. ơ aa ơ aa 5.3.4. Ct xén. 5.3.5. Lo i b mt khu t.  Ct xén :  Vn : Khi các i tư ng có kho ng cách To¹ ®é thÕ giíi 3-D To¹ ®é quan s¸t 3-D To¹ ®é quan s¸t 3-D BiÕn ®æi sang täa ®é c¾t xÐn khèi quan ChiÕu lªn cöa sæ quan s¸t s¸t khác nhau ti im quan sát thì chúng s che khu t nhau. Tia sáng t i tư ng n ng ư i quan sát b che khu t. Nu ta c hi n th ng u nhiên lên màn hình thì i To¹ ®é quan s¸t 2-D To¹ ®é chuÈn 2-D BiÕn ®æi thµnh vïng BiÕn ®æi thµnh täa tư ng không ư c hi n th úng hay y nh×n 2-D ®é thiÕt bÞ HiÓn thÞ . 19
  20. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Ph ư ng pháp không gian i tư ng  Có nhi u cách ti p cn lo i b mt (object-space ): cp tr c ti p n nh khu t.Mi gi i pháp phù hp vi mt lo i ngh a i tư ng. Ph ươ ng pháp này so ng dng c th . Các ph ươ ng pháp ư c sánh các i tư ng và ph n i tư ng vi chia thành 2 nhóm: các i tư ng khác xác nh toàn b ư ng hay mt nào s lo i b. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Ph ư ng pháp không gian nh (image- 1) Ph  ng pháp Lc mt sau (Backface space ): Ph ươ ng pháp này xác nh kh Culling) : Trong ph ươ ng pháp này, mt nng nhìn th y ca tng im nh trên mt nhìn th y ca i tư ng ư c xác nh ph ng chi u. Ph n ln thu t toán lo i b bng góc gi a véc tơ pháp tuy n và véc tơ mt khu t da trên ph ươ ng pháp này. Tuy góc nhìn. Ph ươ ng pháp này ch áp dng nhiên ph ươ ng pháp trên rt hi u qu trong cho kh i a di n li. mt s tr ư ng hp. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Mi mt ca i tư ng u có hai véct ơ  Xác nh véc t pháp tuy n ca mt nhìn vuông góc và theo hai ph ươ ng khác nhau th y nh ư sau: Các im xác nh mt i qua mt im bt k ca mt ph ng. ph ng ư c sp xp theo th t ng ư c Trong ó véct ơ vuông góc vi phía mt chi u kim ng h. Thí d các ta 1, 2, nhìn th y là véc tơ pháp tuy n: 3, 4 hình thành mt ph ng tr ư c ca hình 3 2 hp trên. Tng cp ta liên ti p s to thành véct ơ nm trên mt ph ng. 4 N 1 20
  21. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Hình v trên ta có các véc tơ 12 , 23 , 34 ,  Gi s véc tơ hư ng nhìn là V, mt nhìn 41 . Véct ơ pháp tuy n (véct ơ N) là véct ơ th y ư c là mt có véct ơ pháp tuy n N trùng vi véct ơ là kt qu ca tích có to vi véc tơ V mt góc θ trong kho ng [- hư ng ca mt véct ơ bt k trên mt 90 0, 90 0] hay cos θ ≥ 0. ph ng (thí d véct ơ 12 ) vi véct ơ ti p theo  Xét du cos θ bng cách ki m tra du tích nó (thí d véct ơ 23 ). vô hư ng véct ơ N và V: V.N = |V|.|N|.cos θ, nu V.N >0 thì mt ph ng i tư ng nhìn th y. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Xét ví d: Tìm các mt ph ng nhìn th y t  Hãy xét mt ph ng AED: im P(5,5,5) n hình hp nh ư hình v:  Véct ơ AE =(-1,1,0) hay AE = -i+j  Véct ơ DA =(1,0,-1) hay DA =i-k Trong ó: i, j, k là véct ơ ơ n v theo tr c x, y, z. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Véct ơ pháp tuy n ca mt ph ng này s là  Gi véct ơ quan sát là V ư c lp t im tích véct ơ ca hai véct ơ DA và AE : nhìn (5, 5, 5) n mt im trong mt ph ng AED, ta ch n im A(1,0,0).  i j k   V=(x 2-x1, y2-y1, z2-z1)= 4i + 5j + 5k N=DA x AE = 1 0 −1 =(i +j +k)    Tích vô hư ng ca N và V nh ư sau:   −1 1 0 N.V=x 2x1+y 2y1+z 2z1= 4.1+5.1+5.1=14 > 0 21
  22. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Vy, m t ph ng AED là nhìn th y. 2) Ph  ng pháp Sp xp chi u sâu (Depth-  Tươ ng t tính cho các m t ph ng còn l i, Sorting) hay Painter kt qu là:  Tác gi là Newell , Sancha (1972). S dng  Nhìn th y: AED, BEA, DEC. c thao tác không gian i tư ng và thao  Không nhìn th y: CEB và ABCD. tác không gian nh. ây thu c lo i thu t toán “Danh sách mc ưu tiên”. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Ph ươ ng pháp này tươ ng t thu t toán “Hi ha". Ha s s v nn tr ư c, sau ó b xung các vt th t xa hơn. Cu i cùng là các vt th cn cnh. Có ngh a rng v i tư ng theo th t sâu. a/ b/ c/ H×nh. 21 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  ư Ý t ng:  Bt li: òi hi sp xp và b gy; các pixel  Sp xp các mt theo chi u sâu z gi m dn. ư c hi n th nhi u ln.  Gi i quy t vn nh p nh ng khi z gi lên  ph c tp: Ω(n2) nhau (c n b gy các a giác).  Mô t thu t toán bng code.  Duy t li t z ln nh t n nh nh t.  Vì v a giác gn nh t sau cho nên nó s trên nh (do vy có th nhìn th y). 22
  23. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Gi s ta có tp danh sách a giác cn v.  Ki m tra xem mt ph n P có che khu t mt  While Còn a giác cn v: ph n ca Q?  Ch n a giác P vi giá tr zmax ; ó là a  If giá tr x ca P và Q không ph nhau, ti p giác xa ng ư i quan sát nh t. tc (ra kh i lp).  Vi mi a giác Q (giá tr z ca Q ph lên  If giá tr y ca P và Q không ph nhau, ti p giá z ca P). tc. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  If P nm hoàn toàn i di n vi mt ph ng  n ây có th kh ng nh P ph Q, vy ca Q t im nhìn thì ti p tc. xem kh nng v Q tr ư c P?  If Q nm hoàn toàn cùng phía vi mt  If Q nm toàn b i di n vi mt ph ng P ph ng ca P t im nhìn thì ti p tc. t im nhìn, hãy i ch P và Q và th c  If chi u ca P và Q trên mt x-y không ph hi n li vòng lp. nhau, ti p tc.  If P nm toàn b cùng phía vi mt ph ng Q t im nhìn, hãy i ch P và Q và th c hi n li vòng lp (Q tr thành P mi). ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  If toàn b các ki m tra trên u th t bi: x x  B gy P hay Q x P  Q Thay th a giác ban u bng hai a giác mi P to ra trong danh sách. Q Q  Kh i ng li vòng lp. P  z V P và lo i nó kh i danh sách. c/ z b/ a/ 23
  24. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t. 3) Ph  ng pháp vùng đ m (Z-buffering)  S dng Z-buffer (hay còn gi là depth buffer) lưu tr giá tr z (hay sâu) ca  Ed. Catmull (1974). Hay ư c s dng nh t. D cài t cho c ph n cng và ph n mi im s ư c v trên màn hình. Khi mm. lưu tr giá tr z ca cùng v trí thì ph i ki m tra xem nó có gn im quan sát? Sau ó  Mi im (x, y, z) trên vt th tươ ng ng ch v cho giá tr gn im quan sát hơn. vi ta (x, y) ca nó trên mt quan sát. Giá tr z tng theo kho ng cách im quan sát. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Cn tìm sâu z? Có th tng tc tính  T các ta trên ta có hai véct ơ ch toán sâu z khi u vào ch có giá tr z. ph ươ ng ca mt ph ng ch a a giác ang Ta hãy xét ba nh bt k ca a giác, gi xem xét là P1P2=(x 2-x1; y2-y1; z2-z1) và s chúng là P1=(x 1, y1, z1), P2=(x 2, y2, z2) P1P3=(x 3-x1; y3-y1; z3-z1). và P3=(x 3, y3, z3). Ta ph i xây dng  Ta tính véct ơ pháp tuy n ca nó: ph ươ ng trình mt ph ng nh ư sau: ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Thu t toán:  Ph ươ ng trình m t ph ng i qua pháp tuy n n và P3 s là:  Gán giá tr max cho zbuf For mi i t ư ng A (x-x ) + B (y-y ) + C (z-z ) = 0 1 3 1 3 1 3 For mi im P(x, y, z) trong hàng quét  Sau khi bi n i ta có ph ươ ng trình m t If z < zbuf[x][y] ph ng d ng: Ax + By + Cz + D = 0 Begin − D − Ax − By  T ó ta có : z = C zbuf[x][y]= z; Writepixel (x, y); End 24
  25. 4/2/2012 ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t. 4) Ph  ng pháp Phân ho ch không gian  Có th v các a giác theo tr t t bt k. (BSP-Binary Space Partitioning). Không cn so sánh các i tư ng vi  Cây BSP ư c Fuchs , Kedem và Naylor (1980) nhau. Có kh nng làm vi c vi mt cong s dng lo i b mt khu t. Thu c lo i thu t và mt ph ng. Bt li là òi hi b nh ln toán “Danh sách mc ưu tiên” và “Không gian i x lý. tư ng”. Kt qu ca thu t toán là danh sách các mu a giác theo ưu tiên cho mt im quan sát xác nh. ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.5. Lo i b mt khu t.  Thí d:  Thu t toán xây dng cây BSP:  Ch n a giác bt k, thí d ch n a giác 3.  Ch n a giác bt k.  Chia thành hai na không gian tr ư c và sau.  Chia toàn b a giác thành hai ph n: na tr ư c và na sau.  B ôi a giác 5 thành 5a và 5b. Hình thành gc cây 3, phía tr ư c có 1, 2 và 5a và phía sau  B ôi a giác n m trên hai n a. có 4 và 5b.  Ch n mt a giác t mi phía chia ôi các  Ch n ti p a giác 2 cho phía tr ư c to các cnh (scene). nút mi. Tươ ng t ch n a giác 4 cho phía sau  Th c hi n lp: chia mi phía cho n khi mi ch n nút mi. nút ch ch a mt a giác.  Làm ti p tc cho n khi có cây nh ư sau: ơ aa ơ aa 5.3.5. Lo i b mt khu t. 5.3.6. Mô hình sáng và Tô bóng. 3  Các vn liên quan khi tô bóng Tr−íc Sau 4  Mô t ngu n sáng: v trí, cư ng . 2 Tr−íc  c im b mt tô 5a 1 5b  Kho ng cách gi a mt tô và các ngu n sáng. 25
  26. 4/2/2012 ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng.  Hai lo i ngu n sáng:  Nhi m v là ph i tính cư ng ánh sáng  Ánh sáng im: ánh sáng t mt im trên mi im ca nh i tư ng. Hãy xem chi u lên vt th , theo hư ng nh t nh xét tia sáng chi u vào i tư ng nh ư hình  Ánh sáng môi tr ư ng: ánh sáng i n t mi v. Góc θ to bi tia ti vi véc tơ pháp hư ng, không quan tâm n v trí ngu n tuy n n ca mt ang tính cư ng . sáng. ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 1) K thu t tô bóng mt ca Lambert  Nu ngu n sáng phù hp vi quy lu t ca tia lazer (ta gi lo i ngu n sáng này là èn ri) thì bc x lý tư ng ca Lambert s nh ư sau: I = Is.kd.cos θ. Trong ó: Is là cư ng im ngu n, kd là h s ph n x có giá tr trong kho ng [0 1]. ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 1) K thu t tô bóng mt ca Lambert 1) K thu t tô bóng mt ca Lambert  Công th c trên cho th y my thi u sót sau:  Do v y:  Th c t còn có ngu n sáng môi tr ư ng  Công th c tính n c ư ng ánh sáng môi chi u vào vt th tr ư ng:  sáng trên mt vt th còn ph thu c vào I = I aka+ I skd cos θ kho ng cách gi a nó ti ngu n sáng.  Hàm cos ư c tính t tích vô h ư ng c a hai véc t ơ ơ n v L và n. Do ó I =I aka+ I skd (n.L) 26
  27. 4/2/2012 ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 1) K thu t tô bóng mt ca Lambert 1) K thu t tô bóng mt ca Lambert  Công th c có tính n cư ng ánh sáng  Nh n xét: Nu i tư ng cu to bng các môi tr ư ng và kho ng cách t ngu n sáng mt a giác thì ph ươ ng pháp này to ra các n vt th : cư ng sáng nh ư nhau cho các im trên I k cos θ I = I k + s d cùng mt, do vy s có nh bao gm nhi u a a D 2 ô sáng. Gi i pháp này có tc nhanh. Trong ó: Ia và ka là cư ng và tham s ca ánh sáng môi tr ư ng; D là kho ng cách t ngu n sáng ti vt th . ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng.  VD: Cho ba im A(0,0,1), B(1,0,0) và 2) K thu t tô bóng ca Gauraud. C(0,1,0) và ngu n sáng có cư ng là 9  Kh c ph c nh ư c im ca ph ươ ng pháp t ti kho ng cách xa theo hư ng: Lambert, trong k thu t Gauraud cư ng ( 2i+3j+4k) . Hãy xác nh cư ng bc sáng ư c tính toán ti mi im. x lý tư ng tô bóng vi h s ph n chi u là  Tính cư ng ti các nh chung ca 0.25. nhi u a giác: ly trung bình các pháp tuy n ca các a giác có chung nh. ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 2) K thu t tô bóng ca Gauraud. 2) K thu t tô bóng ca Gauraud.  Tính cư ng ti các nh chung ca nhi u a giác: ly trung bình các pháp tuy n ca các a giác có chung nh. ∑ n i n ave = ∑ n i trong ó ni là pháp tuy n ơ n v ca các mt chung nh 27
  28. 4/2/2012 ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 2) K thu t tô bóng ca Gauraud. 2) K thu t tô bóng ca Gauraud.  Ni suy cư ng sáng ti im P khi ã  Khi ã tính cư ng ti nh thì có th ni bi t cư ng sáng ti A và B. suy tuy n tính cư ng cho im tô bóng trong a giác.  Nh n xét: Ph ươ ng pháp này hi u qu , cho nh khá mn. ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. 3) K thu t tô bóng ca Bùi Huy Tư ng.  Tr ư c ht tính véct ơ pháp tuy n ti các nh ca lư i a giác mô ph ng b mt.  Ph ươ ng pháp này nng cao ch t lư ng nh hi n th .  Dùng ni suy tuy n tính tính ra véct ơ pháp tuy n ti các im mi.  Th c hi n ni suy pháp tuy n thay cho ni suy cư ng tô bóng ca Gauraud:  Tính cư ng ánh sáng tô cho các pháp tuy n va ni suy. ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng.  VD: Tính cư ng ánh sáng tô cho im M  Tr ư c ht tính véct ơ pháp tuy n ti các trong t giác ABCD. nh A, B, C và D  Tính cư ng sáng ti các nh này.  Ni suy véct ơ pháp tuy n ti P và Q.  Nu P chia AD theo t l m (AP/PD=m) và Q chia BC theo t l n (BQ/QC=n) thì véct ơ pháp tuy n ti P và Q s là: 28
  29. 4/2/2012 ơ aa ơ aa 5.3.6. Mô hình sáng và Tô bóng. 5.3.6. Mô hình sáng và Tô bóng. N = m N + (1-m) N P A D  Do vy: NQ = m NB + (1-n) NC NM = x (m.NA + (1-m) ND)+ (1-x)(n.NB + (1-n) NC)  Nu M chia PQ vi t s x (MP/MQ=x) thì: = x n.NA + x(1-m) ND+ n(1-x) NB + (1-x)(1-n) NC. NM = x NP + (1-x) NQ  Tính sáng tô theo véct ơ pháp tuy n NM. ơ aa 5.4. Mt s ch liên quan.  Tìm hi u cách thi t lp phép chi u trong OpenGL(song song, ph i cnh)  Tìm hi u cách thi t lp các thông s ca mt ph ng quan sát và kh i quan sát trong OpenGL  Tìm hi u cách thi t lp các thông s cho tô bóng (Lighting) trong OpenGL  Th nghi m các k thu t 3D vi OpenGL 29