Giáo trình đồ họa - Lesson 3
lượt xem 7
download
Các giải thuật cơ sở Nội dung Các giải thuật xén tỉa - Clipping Các thuật toán tô miền kín Phép tô mầu Phép xử lý Antialiasing
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Giáo trình đồ họa - Lesson 3
- Khoa CNTT-DDHBK Hà nội Email: hunglt@it-hut.edu.vn 0913030731 Bài 3: Nội dung Các giải thuật cơ sở Các giải thuật xén tỉa - Clipping Các thuật toán tô miền kín Phép tô mầu Phép xử lý Antialiasing Le Tan Hung hunglt@it-hut.edu.vn 0913030731 1 (c) SE/FIT/HUT 2002 2 (c) SE/FIT/HUT 2002 Xén tỉa - Clipping Clipping đoạn thẳng A fundamental task in graphics is to Lines are defined by their endpoints, so it should be keep those parts of an object that lie possible just to examine these (in a similar way to outside a selected view from being drawn points) and determine whether or not to clip without Clipping is the removal of all objects Khái niệm considering every pixel on the line or part of objects in a modelled scene Xén tỉa là tiến trình xác that are outside the real-world We often have windows that are either very large, window. định các điểm của 1 đối i.e. nearly the whole scene fits inside, or very small, Việc loại từng điểm ảnh của đối tượng tượng nằm trong hay thường chậm nhất là khi đối tượng mà i.e. most of the scene lies inside the window phần lớn nằm ngoài cửa sổ hiển thị. ngoài cửa sổ hiển thị More practical techniques are Hence, most lines may be either trivially accepted or Clipping điểm necessary to speed up the task rejected xmin ≤ x ≤ xmax ymin ≤ y ≤ ymax 3 4 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Giải thuật Cohen Sutherland Outcode The Cohen-Sutherland line-clipping algorithm is particularly fast for “trivial” cases, i.e. lines completely inside or outside the window. Non-trivial lines, i.e. ones that cross a boundary of the window, are clipped by computing the coordinates of the new boundary endpoint of the line where it crosses the edge of the Nếu mã của P1 và P2 đều = 0000 thì toàn bộ đoạn thẳng thuộc phần hiển window thị. Each point on all lines are first assigned an “outcode” If P1.Mã OR P2.Mã == 0000 then “ cả đoạn thẳng thuộc cửa sổ hiển thị” defining their position relative to the clipping rectangle Nếu mã của P1 và P2 có cùng một vị trí mà ở đó ≠ 0 thì P1 và P2 => cùng phía If P1.Mã AND P2.Mã != 0000 then “ 2 điểm nằm về 1 phía của cửa sổ” 5 6 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 1
- Khoa CNTT-DDHBK Hà nội Email: hunglt@it-hut.edu.vn 0913030731 Giải thuật Cyrus-Beck Lyang Barsky x = x1 + (x2 - x1)u = x1 + uDx y = y1 + (y2 - y1)u = y1 + uDy xmin ≤ x1 + Dx.u ≤ xmax ⇔ x ∈ [xm, xM] The Cohen-Sutherland algorithm requires the ymin ≤ y1 + Dy.u ≤ ymax ⇔ y ∈ [ym, yM] window to be a rectangle, with edges aligned with the co-ordinate axes Pk u ≤ qk k = 1, 2, 3, 4 It is sometimes necessary to clip to any convex polygonal window, e.g. triangular, hexagonal, or P1 = − Dx ⎧q1 = x1 − xm rotated. ⎧ ⎪ ⎪q = x − x The, and Liang-Barsky line clippers better P 2 = Dx ⎪ ⎪2 M 1 ⎨ ⎨ optimise the intersection calculations for clipping P 3 = − Dy ⎪q3 = y1 − ym ⎪ to window boundary ⎪ ⎪q4 = y M − y1 P 4 = Dy ⎩ ⎩ Nicholl-Lee-Nicholl reducing redundant boundary clipping by identifying edge and corner regions 7 8 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Nếu Pk ≠ 0 : đoạn thẳng đang xét sẽ cắt cạnh k tương ứng của Nếu Pk = 0 : điều đó tương đương với việc đoạn thẳng đang xét song song với cạnh thứ k của hình chữ nhật clipping. cửa sổ clipping tại vị trí trên đoạn thẳng uk = qk/Pk. a) Nếu qk < 0 ⇒ Đường thẳng nằm ngoài cửa sổ (hệ bất Pk < 0 đoạn thẳng có dạng đi từ ngoài vào trong phương trình trên vô nghiệm) • bất phương trình sẽ có dạng u ≥ qk/Pk u ≥ uk. b)Nếu qk >= 0 thì đoạn thẳng nằm trong hoặc nằm trên cạnh Pk > 0 của cửa sổ clipping. • u ≥ uk sẽ thuộc cửa sổ hiển thị. Hệ bất phương trình luôn thoả mãn. • bất phương trình sẽ có dạng u ≤ qk/Pk • u ≤ uk với uk = qk/Pk là giao của đoạn thẳng với cạnh k của cửa sổ clipping • đoạn thẳng có dạng đi từ trong ra ngoài so với cạnh k. 9 10 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Pk < 0 và uk < 0 cạnh k của cửa sổ clipping cắt đoạn thẳng tại phần mở rộng nằm ⎛ ⎫⎞ ⎧ ngoài đoạn thẳng. q U 2 = min⎜ { }∪ ⎨u k : u k = k , Pk > 0 ⎬ ⎟ 1 uk ≤ u< 0 thoả mãn bất phương trình sẽ không nằm trên đoạn ⎜ ⎟ thẳng cần xét. Pk ⎩ ⎭⎠ ⎝ => uk sẽ nhận là 0 khi uk 0 và uk > 1 q U 1 = max ⎜ {0}∪ ⎨u k : u k = k , Pk < 0 ⎬ ⎟ => uk tương ứng sẽ nhận giá trị 1. ⎜ ⎟ Pk ⎩ ⎭⎠ điểm nằm trong cửa sổ clipping sẽ có dạng như sau: ⎝ U1 ≤ u ≤ U2 11 12 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 2
- Khoa CNTT-DDHBK Hà nội Email: hunglt@it-hut.edu.vn 0913030731 Nicholl-Lee-Nicholl clipping Nicholl-Lee-Nicholl (2) Some edges are irrelevant to Special cases for each endpoint location and slope clipping, particularly if one vertex a Number of cases explodes in 3D, making it lies inside region. 1 2 unsuitable Cases: Reject x1 in 3 x1 in corner region a Top x1 in edge region Top, Right Left For each case, we generate specialized test regions for x2, 4 a which use simple tests (slope, >,
- Khoa CNTT-DDHBK Hà nội Email: hunglt@it-hut.edu.vn 0913030731 When Does Spatial Aliasing Phương pháp khử hiệu ứng răng cưa Occur? Antialiasing Methods 1. Cố định tín hiệu bằng phương pháp lọc-prefiltering: During image synthesis: when sampling a continuous (geometric) model to create a raster image, Giảm độ rộng dải tần tín hiệu bỏi bộ lọc thấphơn trước khi lấy e.g. scan converting a line or polygon. mẫu. Sampling: converting a continuous signal to a discrete signal. Highest quality method, but often impractical. During image processing and image synthesis: 2. Cố định mẫu bằng siêu mẫu supersampling: when resampling a picture, as in image warping or texture mapping. Resampling: sampling a discrete signal at a different sampling rate. Use more samples to raise the Nyquist frequency. Example: “zooming” a picture from nx by ny pixels to snx by sny pixels Simple and widely used. s>1: called upsampling or interpolation 3. Cố định mẫu bằng phương pháp mẫu bất kỳ can lead to blocky appearance if point sampling is used s
- Khoa CNTT-DDHBK Hà nội Email: hunglt@it-hut.edu.vn 0913030731 Antialiasing (2) 25 (c) SE/FIT/HUT 2002 5
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình đồ họa: Hoạt hình 3 chiều
0 p | 752 | 398
-
Giáo trình inventor 2011 - Chương 3: thiết kế mô hình chi tiết
15 p | 484 | 303
-
Giáo trình cơ bản 3D Max: Hoạt hình 3 chiều
124 p | 476 | 148
-
Giáo trình Đồ họa với Matlab 5.3
268 p | 313 | 144
-
Đồ họa trong Matlab
35 p | 445 | 129
-
Giáo trình đồ họa máy tính - Ths. Võ Phương Bình
120 p | 236 | 83
-
GIÁO TRÌNH ĐỒ HỌA MÁY TÍNH_ĐỒ HỌA 3 CHIỀU
8 p | 271 | 77
-
GIÁO TRÌNH MATLAB CĂN BẢN - CHƯƠNG 3
13 p | 163 | 59
-
GIÁO TRÌNH TÍNH TOÁN KẾT CẤU VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH HƯỚNG DẪN SỬ DỤNG SAP 2000 - PHỤ LỤC B4
8 p | 135 | 49
-
Giáo trình Đồ họa Máy tính - TS. Nguyễn Đức Cường
25 p | 128 | 16
-
Quá trình hình thành giáo trình hướng dẫn tạo ra một hiệu ứng ánh sáng từ phong cách glowing p8
7 p | 82 | 11
-
Bài giảng đồ họa : CÁC PHÉP BIẾN ĐỔI 3 CHIỀU part 2
0 p | 197 | 9
-
Giáo trình Đồ họa Vector - Trường CĐ Cơ điện Hà Nội
155 p | 39 | 8
-
Giáo trình mô đun Đồ họa ứng dụng (Nghề Kỹ thuật lắp ráp và sửa chữa máy tính - Trình độ trung cấp) – CĐ Kỹ thuật Công nghệ BR–VT
88 p | 42 | 7
-
Giáo trình Đồ họa máy tính: Phần 1 - Bùi Thế Duy
86 p | 34 | 7
-
Quá trình hình thành giáo trình hướng dẫn tạo ra một hiệu ứng ánh sáng từ phong cách light effect p8
7 p | 78 | 5
-
Giáo trình Đồ hoạ 3D Studio Max (Ngành: Thiết kế đồ hoạ - Trình độ Cao đẳng) - Trường Cao đẳng Hòa Bình Xuân Lộc
74 p | 2 | 1
-
Giáo trình Hệ điều hành Linux (Ngành: Quản trị mạng máy tính – Trình độ Trung cấp) - Trường Cao đẳng Hòa Bình Xuân Lộc
79 p | 1 | 1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn