Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
170,86 KB
Nội dung
Chương 3 Cácphépbiếnđổitrongkhônggian2 chiều Giảng viên: Ths.Vũ MinhYến Tổ HTTT- Khoa CNTT Nội dung Biểu diễn điểm Phépbiếnđổi khái quát Các phépbiếnđổi hình học Các phépbiếnđổi hệ trục Chuyển đổi quan sát 1. Biểu diễn điểm(1) Trong hệ toạ độ đề các M(x,y) Biểu diễn bằng ma trận: Ma trận hàng: Ma trận cột: O x y M (x, y) x y yy = y x M [ ] yxM = [ ] yxM = 1. Biểu diễn điểm(2) Trong hệ toạ độ thuần nhất M(kx, ky, k) với k≠0, k=0 điểm M ở vô cùng k=1 khi đó M(x, y, 1) được gọi là toạ độ đề các của điểm thuần nhất Biểu diễn bằng ma trận Ma trận hàng: Ma trận cột: [ ] 1yxM = = 1 y x M 2.Phépbiếnđổi hình học khái quát (1) Phépbiếnđổi T biến điểm M thành điểm M’: Công thức biến đổi: Trong đó: a1, b1, c1, a2, b2, c2 là hằng số Ma trận biếnđổi ++= ++= 222 111 ' ' cybxay cybxax )','('),( yxMyxM T → = 1cc 0bb 0aa T 21 21 21 2. Phép biếnđổi hình học khái quát (2) Ta có: Suy ra: M'= M.T ⇔ ⇔ [ ] 1yxM = [ ] 1'y'x'M = [ ] = 1'y'x [ ] ×1yx 1cc 0bb 0aa 21 21 21 [ ] = 1'y'x [ ] 1cybxacybxa 222111 ++++ 3. Các phépbiếnđổi hình học Phép bất biến Phép tịnh tiến Phépbiếnđổi tỉ lệ tại gốc toạ độ Phépđối xứng Phép quay tại gốc toạ độ Phépbiếnđổi kết hợp 3.1. Phép bất biến Biến điểm M thành chính nó: Ma trận biến đổi: )y,x(M)'y,'x('M)y,x(M T ≡→ I 100 010 001 T = = 3.2. Phép tịnh tiến Tịnh tiến điểm M một vector (m,n) thành điểm M’: Công thức biến đổi: Ma trận biến đổi: v r )'y,'x('M)y,x(M v T → r O x y M (x, y) x y y' x' M' (x', y') += += ny'y mx'x = 1nm 010 001 T 3.3. Phépbiếnđổi tỉ lệ tại gốc toạ độ Co dãn so với gốc toạ độ: Công thức biến đổi: với tlx, tly là các hệ số tỉ lệ Ma trận biến đổi: Nhận xét: tlx=tly: phépbiếnđổi đồng dạng tlx=tly >1: phép phóng ảnh tlx=tly <1: phép thu ảnh tlx ≠ tly: phépbiến dạng (phép nhiễu hình) )'y,'x('M)y,x(M T → ×= ×= ytly'y xtlx'x = 100 0tly0 00tlx T [...]... i T2 thnh M2, suy ra t n t i m t phộp bi n i T bi n M thnh M2: T T 1 2 M ( x , y ) M1 ( x1, y1 ) M 2 ( x 2 , y 2 ) T M ( x , y) M 2 ( x 2 , y 2 ) T c g i l phộp bi n i k t h p c a T1 v T2, khi ú: T = T1 ì T2 Ta cú: M1=MìT1, M2=M1ìT2 M2=MìT1 ìT2 =M ì(T1 ìT2) M2=M ìT Suy ra: T= T1 ìT2 3.6 Phộp bi n Vớ d 1: i k t h p (2) T T 1 2 M ( x , y) M1 ( x1 , y1 ) M 2 ( x 2 , y 2 ) T M ( x , y) M 2 (... yw2 T1 r v y x1 O1 T2 x2 O2 yw1 O xw1 Om xv1 r yv1 ym x xw2 x y2 T xm xv2 T3 xm u Khung nhìn T4 O3 x3 Pm yv2 ym T1: Phép tịnh tiến hệ trục vecto v(xw1,yw2) T2: Phépđối xứng qua trục Ox T3: Phép biếnđổi tỉ lệ T4: Phép tịnh tiến hệ trục vecto u(-xv1,-yv1) y3 T=T1*T2*T3*T4 Cụng th c chuy n i quan sỏt xm = Round(tlx(x xw 1 ) + xv 1 ) ym = Round(tly(yw 2 y) + yv 1 ) Trong ú xv 2 xv 1 tlx = xw 2 ... xw1,yw1, xw2, yw2: ki u float, bi n ton c c void cuaso(float x1, float y1, float x2, float y2) { xw1=x1; yw1=y1; xw2=x2; yw2=y2 } 5 .2 M t s khỏi ni m (2) Mn hỡnh Khung nhỡn: L m t vựng hỡnh ch nh t trờn mn hỡnh dựng hi n th hỡnh nh trong c a s Khung nhỡn c xỏc nh b i ng chộo chớnh: (xv1,yv1), (xv2, yv2) Ci Khung nhỡn xm Om (xv1, yv1) (xv2, yv2) ym H to thi t b hi n th H to mn hỡnh t: xv1,yv1, xv2, yv2:... xw2 th gi i th c x xv1 xm A1 N1 yv2 D1 ym H to x xv1 x xw1 = m xw xw xv 2 xv 1 2 1 yw y y m yv1 2 = yw 2 yw1 yv 2 yv1 xv2 M1 B1 xm Khung nhỡn Pm=? C1 mn hỡnh xv 2 xv1 xm = (x xw1 ) + xv1 xw 2 xw1 yv 2 yv1 y m = (yw 2 y ) + yv1 yw 2 yw1 xm = Round(tlx(x xw 1 ) + xv 1 ) xm = tlx(x xw1 ) + xv1 y m = Round(tly(yw 2 y ) + yv 1 ) y m = tly(yw 2 y ) + yv1 Gi i phỏp 2. .. int x2, int y2) { xv1=x1; yv1=y1; xv2=x2; yv2=y2; tlx=(xv2-xv1)/(xw2-xw1); tly= (yv2-yv1)/(yw2-yw1); } 5.3 Xõy d ng cụng th c chuy n Mn hỡnh i quan sỏt Khung nhỡn Om y xm cửa sổ (xv1, yv1) (xw2, yw2) O x (xw1, yw1) (xv2, yv2) ym Hệ toạ độ thế giới thực H to mn hỡnh Bi toỏn: Khung nhỡn C as Input: C as Khung nhỡn i m P(x,y) Output: Tớnh Pm(xm,ym) Pm(xm,ym)? y yw2 y yv1 P(x,y) H to Pm=? ym yw1 O xv2 xm... x 2 , y 2 ) T M ( x , y) M 2 ( x 2 , y 2 ) Tớnh ma tr n T v i T1, T2 l n l t l cỏc phộp t nh ti n vecto (a1, b1) v (a2, b2) ? Gi i quy t v n Ta cú: Suy ra: : 1 0 0 T1 = 0 1 0 a1 b1 1 1 T2 = 0 a 2 0 1 b2 0 0 1 0 0 1 0 0 1 0 0 1 T = T ì T2 = 0 1 0 ì 0 1 0 = 0 1 0 1 a1 b1 1 a 2 b2 1 a1 + a 2 b1 + b2 1 3.6 Phộp bi n i k t h p (3) Vớ d 2: Tớnh ma tr n bi n i bi u di n phộp... cụng c 2D p d ng b cụng c 2D v th hm sin 5.1.M c ớch Mụ ph ng hỡnh nh trong khụng gian th c hai chi u lờn thi t b hi n th (mn hỡnh) Mn hỡnh Vớ d : Khụng gian th c 2 chi u Hỡnh nh bi u di n trờn mn hỡnh 5 .2 M t s khỏi ni m C as : L m t vựng hỡnh ch nh t trong khụng gian th c 2 chi u, gi i h n hỡnh nh c n hi n th C a s c xỏc nh b i ng chộo chớnh: (xw1,yw1), (xw2, yw2) Ci t: y cửa sổ (xw2, yw2) O x... ym yw1 O xv2 xm xv1 xm Om yv2 x xw1 xw2 x th gi i th c ym H to mn hỡnh Gi i phỏp 1(1) y yw2 y D yw1 yv1 B P N ym xw1 H to xm xv2 M1 x xw2 th gi i th c Khung nhỡn N1 Pm=? AM = AB AN = AD A 1M1 A 1B1 A1N1 A 1D1 D1 C1 x ym xm B1 C yv2 O xv1 A1 c as M A Om H to mn hỡnh Gi i phỏp 1 (2) y A yw2 y yw1 D yv1 AN A1N1 = AD A1D1 tlx = xv 2 xv 1 xw 2 xw 1 tly = yv 2 yv 1 yw 2 yw 1 ym C xw1 AM A 1M1 =... Round(tlx(x xw 1 ) + xv 1 ) ym = Round(tly(yw 2 y) + yv 1 ) Trong ú xv 2 xv 1 tlx = xw 2 xw 1 yv 2 yv 1 tly = yw 2 yw 1 5.4 Xõy d ng b cụng c 2D(1) Om y C as xv1 xv2 Khung nhỡn yv1 yw2 B1 B A moveto(x,y) lineto(x,y) A1 yw1 O xw1 x yv2 xw2 ym H to th gi i th c H to xm mn hỡnh 5.4 Xõy d ng b cụng c 2D (2) Xõy d ng 2 cụng c : void chuyenden(float x, float y): Con tr chuy n tng ng hỡnh n i m (xm, ym) trờn mn... i u ki n x[-;3 ] trờn khung nhỡn cú kớch th c (150, 150), (300; 25 0) y c as (xw2, yw2) Khung nhỡn Om (xv1, yv1) O x (xv2, yv2) (xw1, yw1) ym xm Code void main() { int gd=0, gm; initgraph(&gd,&gm,c:\\tc\\bgi); cuaso(-M_PI,-1.5,3*M_PI,1.5); khungnhin(150,150,300 ,25 0); float dx=0.01; float x=xw1; float y=sin(x); chuyenden(x,y); while (x . 3 Các phép biến đổi trong không gian 2 chiều Giảng viên: Ths .Vũ Minh Yến Tổ HTTT- Khoa CNTT Nội dung Biểu diễn điểm Phép biến đổi khái quát Các phép biến đổi hình học Các phép biến đổi. và T2, khi đó: T = T1 × T2 Ta có: M1=M×T1, M2=M1×T2 ⇒ M2=M×T1 ×T2 =M ×(T1 ×T2) M2=M ×T Suy ra: T= T1 ×T2 )y,x(M)y,x(M )y,x(M)y,x(M)y,x(M 2 2 2 T 22 2 T 111 T 21 →⇔ →→ 3.6. Phép. ⇔ ⇔ [ ] 1yxM = [ ] 1'y'x'M = [ ] = 1'y'x [ ] ×1yx 1cc 0bb 0aa 21 21 21 [ ] = 1'y'x [ ] 1cybxacybxa 22 2111 ++++ 3. Các phép biến đổi hình học Phép bất biến Phép tịnh tiến Phép biến đổi tỉ lệ tại gốc toạ độ Phép đối xứng Phép quay