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

Bài giảng Đồ họa máy tính: Các phép biến đổi - Ngô Quốc Việt

23 19 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 1,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Đồ họa máy tính: Các phép biến đổi cung cấp cho người học những kiến thức như: Các phép biến đổi cơ bản; Ma trận của biến đổi tịnh tiến; Phép xoay; Kết hợp các phép xoay; Quay quanh vecto k bất kỳ;... Mời các bạn cùng tham khảo!

Trang 1

CÁC PHÉP BIẾN ĐỔI

NGÔ QUỐC VIỆT

Trang 2

• Biến đổi quanh gốc

tọa độ

Xoay

2

Trang 3

Tịnh tiến trên X 1; Quay quanh Z 45

Quay quanh Z 45;

Tịnh tiến trên X 1 Khối đặt tại gốc O

Trang 4

 Tịnh tiến

4

Trang 5

 Đồng nhất sx = sy = sz

Trang 6

w z y x

1 0

0 0

0 1

0 0

0 0

cos sin

0 0

sin cos

' '

w z y x

1 0

0 0

0 cos

0 sin

0 0

1 0

0 sin

0 cos

' '

w z y x

1 0

0 0

0 cos

sin 0

0 sin

cos 0

0 0

0 1

' ' '

Xoay quanh trục X:

Trang 7

 Quay quanh vector A bất kỳ một góc .

Quay quanh trục Y gócsao cho A nằm trong mặt phẳngYZ.

Quay quanh trục X gócsao cho A trùng với +Z

Quay quanh trục Z góc

Quay ngược theo trục X (góc -)

Quay ngược theo trục Y (góc - )

 Hỏi: cách tính  và  .

Trang 10

 Trả lời: các phép biến đổi, theo thứ tự được viết từ phải sang trái.

Trang 11

Công thức Rodrigues: c = cos(  ), s=sin(  )

Trang 12

 Viewing transformation: định vị camera và hướng vào cảnh cần chụp.

 Modeling transformation: Sắp xếp, định vị cảnh (nhiều đối tượng)

 Projection transformation: Chọn ống kính và

độ zoom.

 Viewport transformation: Xác định độ lớn cảnh sau cùng

 Tất cả đều dựa trên ma trận 4x4.

12

Trang 13

 Nhằm định vị và hướng của camera: sử dụng hàmgluLookAt(), với toạ độ và hai vector (một hướnglên, và một nhằm vào “tâm” đối tượng) Là định vị

và hướng của điểm nhìn (eye coordinate)

Trang 14

 Nhằm xác định viewing volume Chiếu lên màn hình,

và xem được những gì

 Hiệu ứng tương tự như việc chọn ống kính angle, normal, telephoto), và vùng nhìn (field ofview)

(wide- Hàm glFrustum hoặc gluPerspective()

 Có thể dùng glMatrixMode(transformation type) đểxác lập biến đổi tương ứng

 Chú ý: chỉ số ma trận biến đổi trong OpenGL là hoán

vị (hàng và cột) so với ma trận chuẩn trong C

14

Trang 15

 Chiếu phối cảnh: glFrustum.

 (left, bottom, -near) và (right, top, -near) thuộc mặtnear được chiếu lên (lower, left) và (upper, right) của

Trang 16

Giá trị near, far luôn dương

0

0 0

0

0

2 0

0 0

2

C

B Bottom

Top

Near

A left

right

Near

Near Far

Near Far

D Near

Far

Near Far

C

Bottom Top

Bottom Top

B Left

Right

Left Right

;

;

;

Trang 17

 Chiếu phối cảnh: gluPerspective.

Trang 18

 Xác lập ma trận chiếu phối cảnh

gluPerspective( GLdouble fovy, GLdouble aspect,

 fovy: liếc theo góc thẳng đứng; aspect: tỉ lệ giữa

 Ma trận chiếu xác định như sau

18

Trang 19

 fov*0.5 = arctan ((top-bottom)*0.5 / near)

 top = tan(fov*0.5)*near

 bottom = -top

 top = tan(fov*3.14159/360.0) * near

 left = aspect * bottom

 right = aspect * top

Trang 20

 Khối nhìn có dạng

 Khoảng cách camera không ảnh hưởng đến kích cỡ hiển thị đối tượng

20

Trang 21

void glOrtho(GLdouble Left , GLdouble Right, GLdouble

GLdouble Far )

 (left, bottom, near) và (right, top, near) thuộc mặt near được

chiếu lên (lower, left) và (upper, right) của cửa sổ.

0 0

2 0

0

0

2 0

0 0

2

z y x

t Near Far

t Bottom

Top

t Left

Right

Near Far

Near Far

t

Bottom Top

Bottom Top

t

Left Right

Left Right

t

z y x

Giá trị của far hay near là âm, nếu mặt nằm

sau điểm nhìn, và dương nếu trước điểm nhìn

Trang 22

 Vùng chữ nhật theo đơn vị pixel trên windows để render cảnh (đã được tính qua model view và projection view).

 Tỉ lệ (dài/rộng) viewport nên đồng dạng với khối nhìn.

near=1, far=3 thì chỉ những toạ độ có giá trị z

từ 1 đến 3 mới thấy được (mặc định mắt tại gốc).

22

Trang 23

 Khi chọn đối tượng bằng mouse  cần chuyển về toạ độ đối tượng.

 Sử dụng gluUnProject()

 INV: ma trận nghịch đảo

Ngày đăng: 26/10/2021, 13:26

HÌNH ẢNH LIÊN QUAN

 Nhằm xác định viewing volume. Chiếu lên màn hình, và xem được những gì. - Bài giảng Đồ họa máy tính: Các phép biến đổi - Ngô Quốc Việt
h ằm xác định viewing volume. Chiếu lên màn hình, và xem được những gì (Trang 14)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm