Chng 3: Các phép biên đổi trong không gian 2 chiều-Ths.Vũ Minh Yến pdf

31 640 8
Chng 3: Các phép biên đổi trong không gian 2 chiều-Ths.Vũ Minh Yến pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 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 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ép biến đổi hình học khái quát (1)  Phép biế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ép biến đổi hình học  Phép bất biếnPhé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 tại gốc toạ độ  Phép biến đổi kết hợp 3.1. Phép bất biếnBiế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ép biế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ép biến đổi đồng dạng  tlx=tly >1: phép phóng ảnh  tlx=tly <1: phép thu ảnh  tlx ≠ tly: phép biế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

Ngày đăng: 29/06/2014, 10:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan