Bài giảng Đồ họa máy tính: Các phép biến đổi trong đồ họa ba chiều - TS. Đào Nam Anh

28 160 0
Bài giảng Đồ họa máy tính: Các phép biến đổi trong đồ họa ba chiều - TS. Đào Nam Anh

Đ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

Bài giảng Đồ họa máy tính: Các phép biến đổi trong đồ họa ba chiều cung cấp cho người học các kiến thức: Các phép biến đổi hình học, phép biến đổi mô hình và phép biến đổi hệ trục tọa độ. Mời các bạn cùng tham khảo.

Computer Graphics ĐỒ HỌA MÁY TÍNH CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA BA CHIỀU Ts Đào Nam Anh Computer Graphics NỘI DUNG I CÁC PHÉP BIẾN ĐỔI HÌNH HỌC II PHÉP BIẾN ĐỔI MƠ HÌNH VÀ PHÉP BIẾN ĐỔI HỆ TRỤC TỌA ĐỘ Trang đầu Computer Graphics Tham khảo Francis S Hill Computer Graphics Macmillan Publishing Company, NewYork, 1990, 754 tr James D.Foley, Andries Van Dam, Feiner, John Hughes Introduction to Computer Graphics Addision Wesley, NewYork, 1995, 559 tr James D.Foley, Andries Van Dam, Feiner, John Hughes Computer Graphics - Principle and Practice Addision Wesley, NewYork, 1996, 1175 tr Dương Anh Đức, Lê Đình Duy Giáo trình Đồ họa máy tính Khoa Công nghệ thông tin, Trường Đại học Khoa học Tự nhiên (lưu hành nội bộ), 1996, 237 tr Hoàng Kiếm, Dương Anh Đức, Lê Đình Duy, Vũ Hải Quân Giáo trình Cơ sở Đồ họa Máy Tính, NXB Giáo dục, 2000 Donald Hearn, M.Pauline Baker Computer Graphics, C version Prentice Hall International Inc, Upper Saddle River, New Jersey, 1997, 652tr Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA BA CHIỀU Các phép biến đổi đồ họa ba chiều mở rộng phép biến đổi đồ họa hai chiều cách thêm vào việc xem xét tọa độ thứ ba, tọa độ z Bây giờ, tịnh tiến đối tượng thông qua việc mô tả vector tịnh tiến ba chiều Vector xác định độ dời vật theo ba chiều không gian Tương tự, ta thu phóng đối tượng với tỉ lệ biến đổi theo ba chiều Khi khảo sát phép quay mặt phẳng hai chiều Oxy, ta cần khảo sát phép quay quanh tâm, hay nói cách khác, phép quay quanh trục vng góc với mặt phẳng Oxy Trong không gian ba chiều, ta chọn trục quay có phương Phần lớn hệ đồ họa xử lí phép quay không gian ba chiều tổ hợp ba phép quay với trục quay trục tọa độ x, y z Như vậy, người dùng dễ dàng xây dựng phép quay cách mơ tả trục quay góc quay Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA BA CHIỀU Cũng trình bày phép biến đổi đồ họa hai chiều, chương này, ta khảo sát phép biến đổi đồ họa ba chiều dạng ma trận Một chuỗi phép biến đổi biểu diễn ma trận tích ma trận tương ứng với phép biến đổi thành phần Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một cảnh ba chiều tạo nhờ phép biến đổi Phép tịnh tiến, quay, biến đổi tỉ lệ, phép biến dạng ví dụ phép biến đổi hình học Chúng biết tới phép biến đổi affine sở Trong số đó, phép quay nói quan trọng hữu dụng cho phép nhìn đối tượng theo hướng khác nhau, điều cho phép cảm nhận hình vẽ ba chiều trực quan hơn, dễ chịu Ta tạo nhiều phiên đối tượng cách vẽ đối tượng sau áp dụng dãy phép biến Trang đầu đổi hình học lên Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép biến đổi affine Phép biến đổi affine phép biến đổi tuyến tính, khả nghịch Phép biến đổi bảo tồn tính song song đường thẳng bảo tồn tính tỉ lệ khoảng cách đoạn thẳng Tuy nhiên, phép biến đổi không bảo tồn góc nghiêng chiều dài đoạn thẳng Các phép biến đổi bảo toàn tỉ lệ khoảng cách Các hệ tọa độ theo quy ước bàn tay phải (a) quy ước bàn tay trái (b) Hệ tọa độ Descartes ba chiều định nghĩa theo quy ước bàn tay trái bàn tay phải Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép biến đổi affine Định nghĩa Hệ tọa độ theo quy ước bàn tay phải hệ tọa độ với trục x, y, z thỏa điều kiện: Nếu để bàn tay phải cho ngón hướng chiều với trục z, nắm tay lại, chiều ngón tay chuyển động theo hướng từ trục x đến trục y Hệ tọa độ theo quy ước bàn tay trái hệ tọa độ với trục x, y, z thỏa điều kiện: Nếu để bàn tay trái cho ngón hướng chiều với trục z, nắm tay lại, chiều ngón tay chuyển động theo hướng từ trục x đến trục y Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Hệ tọa độ Trong hệ tọa độ nhất, điểm không gian Descartes biểu diễn bốn tọa độ không gian chiều thu gọn (hx,hy,hz,h) Để tiện lợi, người ta thường chọn h=1 Như vậy, điểm (x, y, z) hệ tọa độ Descartes biến thành điểm (x, y, z, 1) hệ tọa độ nhất; điểm (x, y, z, w) hệ tọa độ (với w≠0) tương ứng với điểm (x/w, y/w, z/w) hệ tọa độ Descartes Hình – Các điểm hệ tọa độ Descartes Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Hệ tọa độ 10 Dạng ma trận phép biến đổi affine hệ tọa độ Phép biến đổi affine ba chiều biến điểm P thành điểm Q có dạng : Q=P.M, Q=(Qx,Qy,Qz,1), P=(Px,Py,Pz,1)và M ma trận biến đổi 4x4 hệ tọa độ Dạng tổng quát phép biến đổi affine ba chiều tr=(trx,try,trz) vector tịnh tiến Một số tính chất phép biến đổi ba chiều : Tính chất đường thẳng bảo tồn Nghĩa là, đường thẳng khơng gian ba chiều biến đổi thành đường thẳng Tính song song bảo toàn Nghĩa là, hai đường thẳng song song biến đổi thành hai đường thẳng song song Tính tỉ lệ khoảng cách bảo toàn Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép biến dạng 14 Biến dạng theo trục tọa độ bị ảnh hưởng tọa độ ứng với hai trục lại Ma trận phép biến dạng sau: (6.4) Ta có mối quan hệ Qx với P : Qx=Px+hxyPy+hxzPz Ở hiểu hxy lượng mà tọa độ y P tác động lên tọa độ x Q Hình : Phép biến dạng theo trục x : hxy= hxz = 1, hệ số khác Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép biến dạng 15 Tương tự trường hợp phép biến đổi tỉ lệ, phép biến dạng Sh (6.4) có điểm bất động gốc tọa độ O Ta xây dựng phép biến dạng với tâm biến dạng điểm (xf,yf,zf) Ma trận biến đổi phép biến dạng với tâm (xf,yf,zf) là: Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay 16 Phép quay quanh trục tọa độ Khác với phép quay hai chiều quanh điểm bất kì, ba chiều ta có phép quay quanh trục tọa độ Ở ta sử dụng hệ tọa độ theo quy ước bàn tay phải quy định chiều quay dương ngược chiều kim đồng hồ Ta có ma trận biểu diễn phép quay quanh trục x, y, z góc q R(z,θ), R(y, θ), R(x, θ): Quay quanh trục z : Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay 17 Phép quay quanh trục tọa độ Khác với phép quay hai chiều quanh điểm bất kì, ba chiều ta có phép quay quanh trục tọa độ Ở ta sử dụng hệ tọa độ theo quy ước bàn tay phải quy định chiều quay dương ngược chiều kim đồng hồ Ta có ma trận biểu diễn phép quay quanh trục x, y, z góc q R(z,θ), R(y, θ), R(x, θ): Quay quanh trục y : Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay 18 Phép quay quanh trục tọa độ Khác với phép quay hai chiều quanh điểm bất kì, ba chiều ta có phép quay quanh trục tọa độ Ở ta sử dụng hệ tọa độ theo quy ước bàn tay phải quy định chiều quay dương ngược chiều kim đồng hồ Ta có ma trận biểu diễn phép quay quanh trục x, y, z góc q R(z,θ), R(y, θ), R(x, θ): Quay quanh trục z : Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay Cách xác định chiều quay dương 19 Các định nghĩa chiều quay dùng chung cho hệ tọa độ theo quy ước bàn tay phải bàn tay trái Cụ thể chiều dương định nghĩa sau: Quay quanh trục x: từ trục dương y đến trục dương z Quay quanh trục y: từ trục dương z đến trục dương x Quay quanh trục z: từ trục dương x đến trục dương y Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay Phép quay quanh trục 20 Giả sử trục quay qua hai điểm P0, P1 với phương biểu diễn vector đơn vị k Quay điểm (x, y, z) quanh trục k theo góc q biến thành điểm (x’, y’, z’) (xem hình) Hình - Phép quay quanh trục k Để thực phép quay quanh k góc q , ta thực chuỗi thao tác sau: Tịnh tiến trục k gốc tọa độ: tr(-P0) (thành trục k') Quay quanh trục x góc α để đặt trục k' nằm mặt phẳng Oxz: rot(x,α ) (thành trục k") Quay quanh trục y góc β để đưa trục k" trục z: rot(y,- β ) Thực phép quay quanh trục z góc θ : rot(z,θ) Thực chuỗi phép biến đổi ngược lại trình Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Phép quay Phép quay quanh trục 21 Góc quay a xác định dựa chiếu k' lên mặt phẳng yz Ta khơng cần tính a cụ thể Thay vào ta tính sin(α) cos(α) cách trực tiếp Từ hình bên ta có: cos(α) = kz/d, sin(α) = ky/d Tương tự, từ hình 6.13 ta có: cos(β) = d/1=d, sin(β) = kx/1=kx Như vậy, phép quay quanh trục P0P1 góc θ, rot(P0P1, θ), phân rã thành chuỗi biến đổi sở sau: tr(-P0) rot(x,α ) rot(y, -β ) rot(z, θ) rot(y, β) rot(x,-α) tr(P0) Hình: Tính góc b Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một số khái niệm liên quan Kết hợp phép biến đổi affine ba chiều 22 Để kết hợp phép biến đổi affine ba chiều, thực tương tự phép biến đổi hai chiều cách dùng hệ tọa độ Bằng cách có kết tương tự trường hợp biến đổi hai chiều Nếu M1 biến đổi P thành Q M2 biến đổi Q thành S M1M2 biến đổi P thành S, ma trận kết hợp nhiều phép biến đổi tính từ việc nhân ma trận phép biến đổi thành phần Trang đầu Computer Graphics PHÉP BIẾN ĐỔI MƠ HÌNH VÀ PHÉP BIẾN ĐỔI HỆ TRỤC TỌA ĐỘ 23 Cho đến thời điểm này, khảo sát phép biến đổi ba chiều thao tác dịch chuyển điểm (một đối tượng) từ vị trí sang vị trí khác hệ trục tọa độ Tuy nhiên, ta cần xem xét đối tượng hệ tọa độ khác nhau, muốn chuyển từ hệ tọa độ sang hệ tọa độ khác Ví dụ, quy trình hiển thị đối tượng ba chiều, ta cần đặt đối tượng vào hệ tọa độ chung cho tất đối tượng cảnh (hệ tọa độ giới thực), sau đó, xác định tia nhìn, ta chuyển đổi từ hệ tọa độ giới thực sang hệ tọa độ quan sát, cuối ta phải chuyển từ hệ tọa độ quan sát sang hệ tọa độ thiết bị, nơi đối tượng hiển thị Trang đầu Computer Graphics PHÉP BIẾN ĐỔI MƠ HÌNH VÀ PHÉP BIẾN ĐỔI HỆ TRỤC TỌA ĐỘ 24 Khi mơ hình hóa đối tượng, ta thường mô tả chúng hệ tọa độ cục bộ, thuận tiện cho việc mơ hình hóa Sau đó, phép biến đổi ta đặt chúng vào cảnh cần hiển thị Cách tiếp cận cho phép ta khơng cần mơ hình hóa q nhiều đối tượng mà mơ hình hóa theo chủng loại đối tượng Ví dụ để tạo cảnh hình bên ta cần mơ hình hóa trái banh, ki, bàn, … Sau phát sinh nhiều ki thấy hình vẽ Trang đầu Computer Graphics PHÉP BIẾN ĐỔI MƠ HÌNH VÀ PHÉP BIẾN ĐỔI HỆ TRỤC TỌA ĐỘ 25 Việc chuyển đổi mô tả đối tượng từ hệ tọa độ sang hệ tọa độ khác thực theo quy trình tương tự đồ họa hai chiều Ta cần xây dựng ma trận biến đổi để khớp trục tọa độ hai hệ Trước tiên, ta cần thực phép tịnh tiến để hai gốc tọa độ trùng Sau đó, ta phải thực tiếp dãy phép quay để khớp trục tọa độ tương ứng lên Nếu hệ tọa độ sử dụng tỉ lệ đo lường khác nhau, ta phải thực thêm phép biến đổi tỉ lệ để đồng hệ tọa độ Trang đầu Computer Graphics PHÉP BIẾN ĐỔI MƠ HÌNH VÀ PHÉP BIẾN ĐỔI HỆ TRỤC TỌA ĐỘ 26 Nếu hệ tọa độ thứ hai có gốc tọa độ đặt (x0, y0, z0) vector sở mơ tả hình (tương ứng hệ tọa độ thứ nhất), trước tiên ta cần thực phép tịnh tiến T(-x0,-y0,-z0) Sau ta xây dựng ma trận quay R dựa vector sở Ma trận biến đổi vector đơn vị u’x, u’y, u’z tương ứng thành trục x, y, z Ma trận phép biến đổi hệ tọa độ tích T.R Ma trận biến đổi hệ tọa độ Descartes thành hệ tọa độ Descartes khác, cho dù chúng hệ tọa độ theo quy ước bàn tay phải hay bàn tay trái Trang đầu Computer Graphics TÓM TẮT 27 Chúng ta vừa khảo sát phép biến đổi affine ba chiều mở rộng phép biến đổi affine hai chiều Cũng phép biến đổi affine hai chiều, trước tiên ta khảo sát phép biến đổi sở: tịnh tiến, tỉ lệ, quay; sau khảo sát phép biến đổi phức tạp Đặc biệt, phép quay quanh trục khảo sát chi tiết minh họa cho phân rã phép biến đổi affine thành tích phép biến đổi affine sở Nhờ khảo sát phép biến đổi affine với biểu diễn dạng ma trận hệ tọa độ nên công việc đơn giản quán Các phép tịnh tiến quay có chung thuộc tính là: sau biến đổi, hình dạng kích thước đối tượng khơng thay đổi mà chúng bị thay đổi vị trí định hướng khơng gian Vì vậy, người ta gọi hai phép biến đổi phép biến đổi rigid-body transformations Phần cuối chương, xem xét phép biến đổi hệ tọa độ Các phép biến đổi quan trọng trình hiển thị đối Trang đầu tượng ba chiều Computer Graphics Câu hỏi 28 Trang đầu ... đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA BA CHIỀU Các phép biến đổi đồ họa ba chiều mở rộng phép biến đổi đồ họa hai chiều cách thêm vào việc xem xét tọa độ thứ ba, tọa độ z Bây giờ,... với phép biến đổi thành phần Trang đầu Computer Graphics CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Một cảnh ba chiều tạo nhờ phép biến đổi Phép tịnh tiến, quay, biến đổi tỉ lệ, phép biến dạng ví dụ phép biến đổi. .. PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA BA CHIỀU Cũng trình bày phép biến đổi đồ họa hai chiều, chương này, ta khảo sát phép biến đổi đồ họa ba chiều dạng ma trận Một chuỗi phép biến đổi biểu diễn ma trận

Ngày đăng: 30/01/2020, 07:34

Từ khóa liên quan

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

Tài liệu liên quan