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

Bài giảng Đồ họa máy tính: Các thuật toán cắt xén (Clipping) - Ma Thị Châu (2017)

31 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

Nội dung

Bài giảng Đồ họa máy tính: Các thuật toán cắt xén (Clipping) cung cấp cho người học các kiến thức: Khung nhìn trong 2D, chấp nhận đơn giản, loại bỏ đơn giản, thuật toán Cohen-Sutherland, mã Cohen-Sutherland 2D,... Mời các bạn cùng tham khảo nội dung chi tiết.

Đồ họa máy tính Các thuật tốn cắt xén (Clipping) 2/17/17 Ma Thị Châu - Bộ môn KHMT Khung nhìn 2D l l l Trong 2D, giới định nghĩa mặt phẳng vô hạn, hệ tọa độ định Chúng ta cần lấy vùng mặt phẳng 2D để xem, thường gọi ‘cửa sổ’ Trong thiết bị hiển thị chúng ta, cần phải xác định vùng để hiển thị, thường gọi ‘viewport’, sử dụng hệ tọa độ thiết bị – – – Cắt bỏ tất vật thể nằm cửa sổ Tịnh tiến cho khớp với viewport Co giãn theo hệ tọa độ thiết bị 2/17/17 Ma Thị Châu - Bộ mơn KHMT Khung nhìn 2D 250° 45° Cửa số tọa độ giới Viewport tọa độ thiết bị 250 x 250 Điểm 2/17/17 Ma Thị Châu - Bộ môn KHMT Clipping 2D l Cần phải cắt đối tượng theo cạnh cửa số – v.d đoạn thẳng 2/17/17 Ma Thị Châu - Bộ môn KHMT Chấp nhận đơn giản Hai đầu mút nằm cửa số ® chấp nhận 2/17/17 Ma Thị Châu - Bộ môn KHMT Loại bỏ đơn giản Hai đầu mút nằm ngồi phía ® loại bỏ 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Cohen-Sutherland l l Phương pháp hiệu để chấp nhận loại bỏ đoạn thẳng không cắt cạnh cửa sổ Gán mã bit cho đầu mút: c(P) = x3x2x1x0 – – – – – Bit 1: đỉnh cửa sổ, y > ymax Bit 2: phía đáy, y < ymin Bit : bên phải cạnh phải, x > xmax Bit : bên trái cạnh trái, x < xmin Mã 4-bit gọi là: Outcode 2/17/17 Ma Thị Châu - Bộ môn KHMT Mã Cohen-Sutherland 2D 1001 1000 1010 0001 0000 0010 0101 0100 0110 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Cohen-Sutherland 1001 1000 0001 0000 0010 0101 0100 0110 1010 Nếu hai đầu có mã 0000, chấp nhận, khơng: Thực phép AND logic mã 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Cohen-Sutherland 1001 1010 1000 1000 0001 0000 0001 0010 0000 0000 0101 0100 0110 Thực AND logic mã đầu mút, Loại bỏ đoạn thẳng khác không 10 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Cyrus & Beck q Nj t= D N j • [ P0 - PEJ ] Edge Ej -Nj •D Mẫu số < ® điểm vào khu vực cửa sổ, xếp vào loại PE Mẫu số > ® điểm khỏi khu vực cửa số, xếp vào loại PL 17 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Cyrus & Beck Sắp xếp điểm PE PL theo t t PL < PE ® khơng có giao điểm t PE PL PL PE Vẽ từ PE ® PL 18 2/17/17 Ma Thị Châu - Bộ môn KHMT Thuật toán Cyrus & Beck PL PE PL P1 PE P0 19 2/17/17 Ma Thị Châu - Bộ môn KHMT Thuật toán Cyrus & Beck k X = I Hi H i = {Q | Ni • (Q - Qi ) ³ 0} i =1 •L song song Li: üL nằm Hi: Ii = (-∞, +∞) üL nằm Hi: Ii =ặ P1 ãL khụng song song Li: ỹi vo: Ii = [ti, +∞ üĐi ra: Ii = (-∞, •Đặt I0=[0,1] P0 k I = ! Ii 20 i =0 2/17/17 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Liang - Barsky Phương trình tham số đường thẳng nối (x1,y1) (x2,y2) ì x = x1 + t * Dx í ỵ y = y1 + t * Dy 21 Với 2/17/17 Dx = x - x1 Dy = y - y1 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Liang - Barsky Điểm P thuộc cửa sổ W khi: xmin £ x1 + Dxt £ xmax ymin £ y1 + Dyt £ ymax hay Với - Dxt £ x1 - xmin Dxt £ xmax - x1 - Dyt £ y1 - ymin Dyt £ ymax - y1 22 2/17/17 Dx = x - x1 Dy = y - y1 Ma Thị Châu - Bộ mơn KHMT Thuật tốn Liang - Barsky - Dxt £ x1 - xmin Dxt £ xmax - x1 - Dyt £ y1 - ymin Dyt £ ymax - y1 Đặt biến phụ ci, qi 23 c1t £ q1 c3t £ q3 c2t £ q2 c4t £ q4 2/17/17 tk = qk / ck Ma Thị Châu - Bộ mơn KHMT Thuật tốn Liang - Barsky tk = qk / ck (1) ck > 0, đt L từ phía phía ngồi đường biên Bk t tăng, gọi tk điểm (2) ck < 0, đt L từ phía ngồi vào phía đường biên Bk t tăng ta gọi tk điểm vào (3) ck = 0, đt L song song với Bk, cửa số qk < 24 2/17/17 Ma Thị Châu - Bộ môn KHMT Thuật toán Liang - Barsky Loại bỏ đoạn thẳng nếu: - Một giá trị vào (t ứng với điểm vào) >1 - Hoặc giá trị (t ứng với điểm ra) giá trị Nếu không đoạn thẳng giao với cửa sổ Đoạn giao t0>0 t1

Ngày đăng: 07/05/2021, 13:19

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN