intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Đồ họa 2D: Các phép biến đổi - Bùi Tiến Lên

Chia sẻ: Na Na | Ngày: | Loại File: PPT | Số trang:46

121
lượt xem
9
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Đồ họa 2D: Các phép biến đổi có nội dung trình bày khái niệm phép biến đổi, công thức phép biến đổi, định nghĩa biến đổi Affine, hệ tọa độ thuần nhất, công thức xác định ảnh của một điểm, cấu trúc dữ liệu, biến đổi điểm – cài đặt, phép biến đổi tịnh tiến, phép biến đổi quay và các nội dung khác.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Đồ họa 2D: Các phép biến đổi - Bùi Tiến Lên

  1. ĐỒ HỌA 2D CÁC PHÉP BIẾN ĐỔI Giảng viên Bùi Tiến Lên
  2. Phép biến đổi là gì ? Phép biến đổi là một ánh xạ từ không gian R2 vào R2 : -Biến một điểm P thành một điểm P’ -Biến một đối tượng S thành đối tượng S’ T P’ P Ảnh S’ S Trang 2
  3. Công thức phép biến đổi Bieán daïngaùnh ñoåi xaï T :R2 → R2 P  P' Bieán daïng ñoåi haøm P' = T(P ) hay Px = Tx (Px ,Py ) '  ' Py = Ty (Px ,Py ) Trang 3
  4. Định nghĩa biến đổi affine Phép biến đổi affine là phép biến đổi mà các hàm biến đổi Tx, Ty có dạng tuyến tính. Tx(x, y) = ax + cy + e Ty(x, y) = bx + dy + f Trang 4
  5. Hệ tọa độ thuần nhất Heä toïa ñoä Ñeà Heä toïa ñoä thuaàn caùc nhaát P(Px, Py) P(Px, Py, 1) P(Px, Py) P(wPx, wPy, w) Trang 5
  6. Công thức xác định ảnh của một điểm Daïnghaøm Px = aPx + cPy + e '  ' Py = bPx + dPy + f Daïngma traän P' = P.M Ma trận biến đổi hoaëc  a b 0   (P ' x ' ) Py 1 = ( Px Py ) 1. c d 0  e f 1   Trang 6
  7. Công thức xác định ảnh của một điểm Coâng thöùc bieán daïng ñoåi haøm Tx (x, y) = 2x + 3y – 5  Ty (x, y) = - 2x + 2y + 4 Hoaëc daïng traän ma bieán ñoåi  2 −2 0    3 2 0 − 5 4 1   Trang 7
  8. Cấu trúc dữ liệu // Lưu thông tin phep bien doi affine struct TAffine2D { double M[3][3]; }; Trang 8
  9. Biến đổi điểm – Cài đặt TPoint2D TransformPoint2D(TAffine2D T, TPoint2D P) { TPoint2D Q; Q.x = T.M[0][0]*P.x + T.M[1][0]*P.y + T.M[2][0]; Q.y = T.M[0][1]*P.x + T.M[1][1]*P.y + T.M[2][1]; return Q; } Trang 9
  10. Cài đặt đ ọc đ ọc biến đổii biến đổ xén xén chuyển ttọa độ chuyển ọa độ vẽ vẽ void Read_Transform_Convert_Draw_2D(CDC *pDC, char *filename, TAffine2D T) filename { . . . TPoint2D P1, P2; CPoint Q1, Q2; int r, g, b; // Doc doan thang tu tap tin f >> P1.x >> P1.y >> P2.x >> P2.y >> r >> g >> b; // Bien doi doan thang P1 = TransformPoint2D(T, P1); P2 = TransformPoint2D(T, P2); // Chuyen toa do doan thang Q1 = ConvertWorldToScreen2D(P1); Q2 = ConvertWorldToScreen2D(P2); // Ve doan thang pDC->MoveTo(Q1.x, Q1.y); pDC->LineTo(Q2.x, Q2.y); . . . } Trang 10
  11. Tính chất phép biến đổi affine Một phép biến đổi affine luôn có 3 tính chất -Bảo toàn tính thẳng -Bảo toàn tỉ lệ -Bảo toàn song song Trang 11
  12. Bảo toàn tính thẳng d laø ñöôøng T GT thaúng d’ = T(d) d’ laø ñöôøng KL thaúng d d’ Trang 12
  13. Bảo toàn tỉ lệ T C’ A, B, C laø 3 ñieåm thaúng haøng C B’ GT A’ = T(A) B B’ = T(B) A A’ C’ = T(C) KL A’:B’:C’ = A:B:C Trang 13
  14. Bảo toàn song song d1 // d2 d1’ T GT d1’ = T(d1) d2’ d2’ = T(d2) KL d1’ // d2’ d1 d2 Trang 14
  15. Hệ quả -Đoạn thẳng biến thành đoạn thẳng. -Đa giác biến thành đa giác. -Đường cong bezier biến thành đường cong Bezier. T T T Trang 15
  16. Biến đổi đối tượng đổi biến phép Trang 16
  17. Biến đổi đối tượng Trang 17
  18. Biến đổi đối tượng Trang 18
  19. Biến đổi đối tượng Trang 19
  20. Biến đổi đối tượng Trang 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
13=>1