1. Trang chủ
  2. » Công Nghệ Thông Tin

ĐỒ HỌA MÁY TÍNH - CÁC PHÉP BIẾN ĐỔI HÌNH HỌC

12 102 1

Đ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

Nội dung 1. Các phép biến đổi 2D 2. Tọa độ thuần nhất 3. Biểu diễn ma trận các phép biến đổi 2D 4. Tổ hợp các phép biến đổi 2D 5. Vùng nhìn (window) của thế giới thực khung hiển thị (viewport) của màn hình máy tính 6. Biểu diễn ma trận các phép biến đổi 3D

4/18/2011 CH CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Trương Văn Quốc Nhật Nội dung Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 4/18/2011 Các phép biến đổi 2D  Tịnh tiến (translation)  Co giãn (scaling)  Quay (rotation)  Nghiêng (shearing)  Đối xứng (reflection) Tịnh tiến (translation) y x'  x  d x y'  y  d y dy dx x • Xem dạng vector cột: d x   x  x' P   , P '   , T     y  y ' d y  P'  P  T 4/18/2011 Co giãn (scaling) y x'  s x  x 12 • Ví dụ: x'  x y'  s y  y y ' y 12 x • Dưới dạng ma trận:  x'  s x  y '        x  s y   y  hay P'  S  P Quay (rotation) y • Quay góc  (ví dụ: =28o) x'  x  cos   y  sin  y'  x  sin   y  cos  θ φ x • Dưới dạng ma trận:  x' cos   y '        x  sin    y  hay P'  R  P 4/18/2011 Nghiêng (shearing) Nội dung (2 nhất) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 4/18/2011 Tọa độ - Tịnh tiến: P'  P  T - Co giãn: P'  S  P - Quay: P'  R  P Lúc cộng lúc nhân… hè…!? Homogeneous Coordinates Không gian tọa độ XYW w - Tọa độ nhất: P x, y  x x, y, w, w  - Tính nhất: x, y, w x' , y' , w' biểu diễn điểm Mặt phẳng w=1 y 10  x  x    y   y   1    x, y, w  tx' , ty ' , tw', t  - Chuẩn hóa: x, y, w   x , y ,1 w w  4/18/2011 Nội dung (3 ma trận 2D) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 11 Biểu diễn ma trận phép biến đổi 2D - Tịnh tiến: P'  P  T - Co giãn: P'  S  P - Quay: P'  R  P P'  M  P 12 4/18/2011 Tịnh tiến, co giãn, quay - Tịnh tiến:  x' 1 d x   x   y '  0 d    y  y        0     x'  x   d x   y '   y   d       y - Co giãn:  x'  s x  y '       x'  s x  y '         0   x  s y   y  - Quay:  x' cos   y '        x  sin    y  13 sy  x' cos   y '   sin        0  x  0   y  1    sin  cos  0  x  0   y  1   Nghiêng y 6 2  x'  x  y '  SH   y          x 3 1 a 0 SH x  0 0 0 1 1 0 SH y  b 0 0 1 14 4/18/2011 Nội dung (4 tổ hợp 2D) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 15 Xoay quanh điểm bất kỳ? y1 θ P1 x1 T  x1 , y1  P1 R  T x1 , y1  = T  x1 , y1  R  T x1 , y1  1  = 0 0 x1  cos  y1    sin     sin  cos  0 1  x1   ? ? ? 0  0  y1  =  ? ? ? 0 1 1 0  16 4/18/2011 Co giãn quanh điểm bất kỳ? y1 P1 x1 y1 P1 x1 17 Nội dung (5 window to viewport) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 18 4/18/2011 Window - Viewport Tọa độ hình Tọa độ giới thực viewport window viewport viewport 19 ( xmax , ymax ) Mwv=? xv,yv=? ( xmin , ymin ) 1.window (thế giới thực) Tịnh tiến window gốc  xv   xw       yv   M wv   yw  1 1     (umax , vmax ) (umin , vmin ) Tịnh tiến đến tọa độ viewport 20 Co giãn window theo kích thướcviewport M wv  Tviewport  S window2viewport  Twindow 10 4/18/2011 Nội dung (6 ma trận 3D) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi 3D 21 Hệ tọa độ trái/phải y y z z x x Hệ tọa độ phải Hệ tọa độ trái (right-handed coordinate system) (left-handed coordinate system) 22 11 4/18/2011 1 0 T d x , d y , d z    0  0 - Tịnh tiến: - Quay: 1 0 cos  Rx     0 sin   0 cos   sin  Rz       23  0 0 d x  - Co giãn:  s x 0 d y  S s x , s y , s z    0 dz    1 0  sin  cos   sin  cos  0 0 0  cos   0 R y      sin  0   1  0 sz 0 0 0  1 sin  0 cos  0 0 0 0  1 sy 0 0 0 0  1 Bài tập 03  Bắt buộc (3 tuần): xây dựng cơng thức & lập trình Tịnh tiến/quay/co giãn liên tiếp Xoay/Co giãn quanh điểm Trong giai đoạn chuyển từ window (thế giới thực) sang viewport (màn hình hiển thị), xác định Mwv, xv,yv biết xmin, ymin, xmax, ymax, umin, vmin, umax, vmax (không lập trình câu này)  Tự tìm hiểu (khơng nộp) Cơng thức quay góc  quanh gốc tọa độ theo ngược chiều kim đồng hồ 24 12 ... nhất) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi. .. 2D) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi. .. viewport) Các phép biến đổi 2D Tọa độ Biểu diễn ma trận phép biến đổi 2D Tổ hợp phép biến đổi 2D Vùng nhìn (window) giới thực  khung hiển thị (viewport) hình máy tính Biểu diễn ma trận phép biến đổi

Ngày đăng: 11/05/2021, 01:11

Xem thêm:

TỪ KHÓA LIÊN QUAN