Bài giảng Đồ họa và hiện thực ảo - Lesson 8: Mô hình bề mặt – Surface Các phương pháp xây dựng
Cho phép phân tích sớm và dễ dàng các đặc tính của bề mặt, đường cong của bề mặt và tính chất vật lý của bề mặt.
Cho phép xác định diện tích, xác định vùng của bề mặt hay các môment của mặt.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Bạn đang xem tài liệu "Bài giảng Đồ họa và hiện thực ảo - Lesson 8: Mô hình bề mặt – Surface Các phương pháp xây dựng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Đồ họa và hiện thực ảo - Lesson 8: Mô hình bề mặt – Surface Các phương pháp xây dựng
CNTT-DHBK Hanoi hunglt@it-hut.edu.vn 1 1 Mô hình bề mặt – Surface Các phương pháp xây dựng Khái niệm Constructive surface Bề mặt tổng hợp Bề mặt tam giác Le Tan Hung www.dohoavietnam.com 2 I. Các khái niệm cơ bản z Mặt cong-Surface Là quỹ đạo chuyển động của 1 đừơng cong tạo nên z Biểu diễn tham biến cho mặt cong – Dựa vào việc xây dựng và tạo bề mặt toán học trên những điểm dữ liệu – Dựa trên việc xây dựng nên bề mặt phụ thuộc vào biến số có khả năng thay đổi một cách trực diện thông qua các tương tác đồ hoạ. z Biểu diễn theo mảnh – Biểu diễn miếng tứ giác - quadrilatera Patches – Biểu diễn miếng tam giác-Triangular Patches x=x(u,v,w) u,v,w E [0, 1] y=y(u,v,w) u + v + w = 1 z=z(u,v,w) Q(u,v,w) = Q[ x=x(u,v,w) y=y(u,v,w) z=z(u,v,w) ] 3 Ưu điểm dùng mặt lưới Cho phép phân tích sớm và dễ dàng các đặc tính của bề mặt, đường cong của bề mặt và tính chất vật lý của bề mặt. Cho phép xác định diện tích, xác định vùng của bề mặt hay các môment của mặt. Với khả năng tô màu bề mặt trong thực tế cho phép việc kiểm tra thiết kế đơn giản. Tạo ra các thông tin cần thiết cho việc sản xuất và tạo ra bề mặt như code điều khiển số được dễ dàng thuận tiện hơn nhiều so với các phương pháp thiết kế cổ điển 4 Biểu diễn mảnh tứ giác z Phương trình x=x(u,v) y=y(u,v) u,v E [ 0, 1] z=z(u,v) Q(u,v) = Q[ x=x(u,v) y=y(u,v) z=z(u,v) ] Thành phần – u,v là các tham biến – Các điểm Q(0,0) Q(0,1), Q(1,0), Q(1,1) là cận của mảnh – Các đường cong Q(1,v), Q(0,v), Q(u,0), Q(u,1) là các biên của mảnh – Đạo hàm riêng tại điểm Q(u,v) xác định vector tiếp tuyến theo hướng u, v 5 Kết nối mảnh tứ giác z Thực thể hình học biểu diễn thông qua các mảnh cùng dạng z Các mảnh có thể nối với nhau theo các hướng u,v khi 2 mảnh cùng hướng đó z Nếu mọi điểm trên biên của 2 mảnh = nhau, hay 2 biên = nhau. 2 mảnh liên tục bậc Co z Nếu 2 biên = nhau và đạo hàm bằng nhau trên cùng 1 hướng thi 2 mảnh gọi là kết nối bậc C1 6 Hệ tọa độ Barycentric Coordinates ? Tập các điểm P1,P2 ... Pn Tập các tổ hợp của các điểm đó k1P1 + k2P2 + k3P3 ... + knPn Với k1 + k2 + k3 + ... + kn =1 các điểm tạo thành không gian affine với các gias trị toạ độ nates k1,k2,k3,..kn được gọi là hệ toạ độ barycentric. CNTT-DHBK Hanoi hunglt@it-hut.edu.vn 2 7 Tam giác Triangular Trong tam giác các điểm có dạng P1, P2, P3 Hệ số: k1, k2, k3 E [ 0, 1] k1 + k2 + k3 = 1 P = k1P1 + k2P2+ k3P3 Nếu Hệ số ki > 1 hoặc <0 điểm P sẽ nằm ngoài tam giác Q Nếu Hệ số ki = 1 hoặc =0 điểm P sẽ nằm trên cạnh tam giác 8 Bi-Linear z Là mặt nội suy từ 4 điểm P00; P01; P10; P11 trong không gian Với (u,v) [0; 1] [0; 1] P(u,v) = (1 - u)(1 - v)P00 + (1 - u)vP01 + u(1 - v)P10 + uvP11 z Dùng để mô tả các đối tượng có hình dạng tứ giác như cờ, khăn ... z Mở rộng cho các đối tượng cùng loại 9 Mô hình hoá các mặt cong Surface Patches zRuled Surface zCoon-Boolean Sum zSurface of Revolution zSwept Surface – Extrusion 10 Ruled Surface z Bề mặt được xây dựng bằng cách cho trượt 1 đoạn thẳng trên 2 đường cong z Các mặt kẻ nhận được bằng phép nội suy tuyến tính từ hai đường cong biên cho trước tương ứng với hai biên đối diện của mặt kẻ P1(u) và P2(u) 0.2 0.4 0.6 0.8 1 0.6 0.7 0.8 0.9 1 1 1.5 2 2.5 3 Ruled Surface (Matke) Duong cong Bspline Duong cong Bezier •Phương trình mặt kẻ: Q(u,v) = P2(u)v + P1(u)(1-v) Nếu hai đường cong cho trước tương ứng là P1(v) và P2(v) Thì mặt kẻ có phương trình Q(u,v) = P1(v)(1-u) + P2(v)u ⎥⎦ ⎤⎢⎣ ⎡= )(2 )(1 u] u) - [(1 vP vP 11 Mặt tròn xoay Revolution surface z Mặt được xây dựng bởi đường thẳng hay 1 đường cong phẳng, quanh một trục trong không gian z Giả sử đường cong phẳng có dạng P(t)=[x(t) y(t) z(t)] 0≤t≤tmax z Ví dụ: quay quanh trục x một thực thể nằm trên mặt phẳng xy, phương trình bề mặt là Q(t, φ ) = [ x(t) y(t) cosφ z(t) sinφ ] πφ 20 ≤≤ 12 VD - Mặt tròn xoay P1[1 1 0] và P2[6 2 0] nằm trong mặt phẳng xy. Quay đường thẳng quanh trục x sẽ được một mặt nón. Xác định điểm của mặt tại t=0.5, φ =π/3. Phương trình tham số cho đoạn thẳng từ P1 tới P2 là: P(t) = [ x(t) y(t) z(t) ] = P1 + (P1 - P2)t 0 ≤ t ≤ 1 với các thành phần Đề-các: x(t) = x1 + (x2- x1)t = 1+5t y(t) = y1 + (y2- y1)t = 1+t z(t) = z1 + (z2- z1)t = 0 Dùng phương trình Q(1/2, π/3) = [ 1+5t (1+t)cosφ (1+t)sinφ ] ⎥⎦ ⎤⎢⎣ ⎡= ⎥⎦ ⎤⎢⎣ ⎡= 4 33 4 3 2 7 3 sin 2 3 3 cos 2 3 2 7 ππ CNTT-DHBK Hanoi hunglt@it-hut.edu.vn 3 13 Mặt trượt - Sweept Surface z Sweep surface là mặt được tạo bởi bằng cách trượt một thực thể z ví dụ: một đường thẳng, đa giác, một đường cong, một hình dọc theo một đường trong không gian. z Q(u,v) = P(u)*[ T(v) ] P(u) thực thể cần trượt [ T(v) ] là ma trận biến đổi([ T(v) ] có thể là ma trận tịnh tiến, quay, hay tỉ lệ hoặc là kết hợp của nhiều phép biến đổi đó) Ví dụ: P1[0 0 0], P2[0 3 0]. P(t) = P1 + (P2 – P1)*u = [0 3u 0 1] 0 ≤ u,v ≤ 1 ⎢ ⎢⎢ ⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ΠΠ− ΠΠ= 10010 0)2cos()2sin(0 0)2sin()2cos(0 0001 )( v vv vv vT 14 0 2 4 6 8 10 -3 -2 -1 0 1 -1 -0.5 0 0.5 1 0 2 4 6 8 10 -2 -1 0 1 -1 -0.5 0 0.5 1 Ví dụ về mặt Sweept Extrusion z Hình vuông xác định bởi 4 đỉnh : P1[0 -1 0], P2[0 -1 -1], P3[0 1 -1], P4[0 1 1] z Đường cong trượt x= 10v y= cos(Πv) – 1 Quay 1 góc khi trượt ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ − − −− − = ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ = 1110 1110 1110 1110 1110 4 3 2 1 )( P P P P uP ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ −Π = 101)cos(10 0100 0010 0001 )( vv vT ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ −Π − 101)cos(10 0100 00)cos()sin( 00)sin()cos( vv ϕϕ ϕϕ 15 Boolean sum Coon surface Mặt được xây dựng trên 4 điểm và các đường cong biên S(u,v) Mặt nội suy trên 4 đường biên S(u; v) = S1(u, v) + S2(u, v) - P(u; v) Với: P(u,v) = (1-u)(1-v)P00 + (1-u)vP01 + u(1-v)P10 + uvP11 S1(u,v) = vA0(u) + (1-v)A2(u) S2(u; v) = uA1(v) + (1-u)A3(v); P là các đỉnh của mảnh 4 Ai(u) là các phươ
File đính kèm:
- bai_giang_do_hoa_va_hien_thuc_ao_lesson_8_mo_hinh_be_mat_sur.pdf