Bề mặt NURBS

Một phần của tài liệu (LUẬN văn THẠC sĩ) mô hình 3d và một số kỹ thuật mô hình hóa 3d trong mô phỏng (Trang 54 - 60)

2.3.2.1. Mô hình bề mặt (Surface) và các phương pháp xây dựng

Các khái niệm cơ bản

Mặt cong (surface): là quỹ đạo chuyển động của một đường cong tạo nên. 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ạ.

Ta có:

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

Biểu diễn mảnh tứ giác

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 ả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

Hình 2.10. Biểu diễn mảng tứ giác

Kết nối mảng tứ giác

Hình 2.11. Kết nối mảng tứ giác

Thực thể hình học biểu diễn thông qua các mảnh cùng dạng, các mảnh có thể nối với nhau theo các hướng u,v khi hai mảnh cùng hướng đó. Nếu mọi điểm trên biên của hai mảnh bằng nhau, hay hai biên bằng nhau. Hai mảnh liên tục bậc C0. Nếu hai biên bằng nhau và đạo hàm bằng nhau trên cùng một hướng thì hai mảnh gọi là kết nối bậc C1.

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 đó

Các điểm tạo thành không gian affine với các giá trịn tọa độ nates k1, k2,k3,…kn được gọi là hệ tọa độ barycentric

Tam giác – Triangular

Hình 2.12. Mảnh tam giác

Trong tam giác có các điểm có dạng P1, P2, P3

Hệ số: k1, k2, k3𝜖 [0, 1]

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 (R)

2.3.2.2. Bề mặt NURBS

Bề mặt B-spline hữu tỷ thay đổi của độ (p,q) được xác định:

𝑆(𝑢, 𝑣) = ∑𝑚𝑖=0∑𝑛𝑗=0𝑁𝑖,𝑝(𝑢)𝑁𝑗,𝑞(𝑣)𝑤𝑖,𝑗𝑃𝑖,𝑗

∑ ∑𝑛 𝑁𝑖,𝑝(𝑢)𝑁𝑗,𝑞

𝑗=0 𝑚

𝑖=0 (𝑣)𝑤𝑖,𝑗

với điều kiện Ni,p và Nj,q là các hàm cơ sở B-spline, Pi,j là các điểm điều khiển, và trọng lượng Wi,j của Pi,j là tung độ cuối cùng của điểm đồng nhất Pi,j w.

Hình 2.13. Bề mặt NURBS

Một B-spline hữu tỷ thay đổi, hoặc NURBS là một bề mặt với 2 tham số được xác định với những biến đổi spline giữa không gian tham số và không gian 3D.

Bề mặt NURBS mô tả hai biến số độc lập nhau u và v, và bốn biến số phụ thuộc nhau x(s,t), y(s,t), z(s,t), và d(s,t) sao cho:

𝑆 ⃗(𝑢, 𝑣) = (𝑥(𝑢, 𝑣)/𝑑(𝑢, 𝑣) , 𝑦(𝑢, 𝑣)/𝑑(𝑢, 𝑣) , 𝑧(𝑢, 𝑣)/𝑑(𝑢, 𝑣))

Rõ ràng:

𝑠⃗(𝑢, 𝑣) =∑𝑛𝑖=0∑𝑚𝑗=0𝑤𝑖,𝑗𝑝⃗𝑖,𝑗𝑁𝑖,𝑝(𝑢)𝑁𝑗,𝑞(𝑣) ∑𝑛𝑖=𝑜∑𝑚𝑗=0𝑤𝑖,𝑗𝑁𝑖,𝑝(𝑢)𝑁𝑗,𝑞(𝑣)

với điều kiện các hàm tạo dáng B-spline N(u) được định nghĩa:

𝑁𝑖,𝑝(u)={1 𝑢𝑖 ≤ 𝑢 ≤ 𝑢𝑖+1

0 }

𝑁𝑖,𝑝(𝑢) = 𝑢 − 𝑢𝑖

𝑢𝑖+𝑝− 𝑢𝑖𝑁𝑖,𝑝−1(𝑢) + 𝑢𝑖+𝑝+1− 𝑢

𝑢𝑖+𝑝+1− 𝑢𝑖+1𝑁𝑖+1,𝑝−1(𝑢)

2.3.2.3.Thuật toán NURBS gốc

NURBS là một bề mặt cong được dùng để biểu diễn, mô hình hóa hình dạng và mô phỏng các đối tượng 3D. Hình dạng của các đối tượng được xác định bởi các điểm điều khiển.

NURBS có tính cơ động cao, dễ dàng điều chỉnh hình dạng từng phần của bề mặt và không ảnh hưởng đến toàn bộ bề mặt, tức là tính điều khiển cục bộ trên bề mặt của đối tượng.

Một bề mặt NURBS được biểu diễn bằng công thức sau:

𝑆(𝑢, 𝑣) =∑𝑛𝑖=0∑𝑚𝑗=0𝑤𝑖𝑁(𝑗,𝑘−𝑢)(𝑢)𝑁(𝑗,𝑘−𝑣)(𝑣)𝑃𝑖,𝑗 ∑𝑛𝑖=0∑𝑚𝑗=0𝑤𝑖 𝑁(𝑖,𝑘−𝑢)(𝑢)𝑁(𝑗,𝑘−𝑣)(𝑣)

Trong đó:

Pi,j: Là các điểm điều khiển W: là độ rộng của vector nút

Ni,k-u(u), Nj,k-v(v): là các hàm cơ bản N,m: là số điểm điều khiển

K-u, k-v: là bậc của các hàm cơ bản theo hướng u,v

Ni, k-u(u), Nj, k-v(v) được biểu diễn bằng một hàm đệ quy Cox-de Boor Hàm đề quy Cox-de Boor được biểu diễn như sau:

𝑁(𝑖,1)(𝑢) = {1: 𝑢𝑖≤ 𝑢 ≤ 𝑢𝑖+1 0: 𝑢 ∉ [𝑢𝑖, 𝑢𝑖+1] 𝑁(𝑖,𝑘)(𝑢) = 𝑢 − 𝑢𝑖 𝑢𝑖+𝑘−1− 𝑢𝑖 𝑁𝑖,𝑘−1(𝑢) + 𝑢(𝑖+𝑘)− 𝑢 𝑢(𝑖+𝑘)− 𝑢𝑖+1 𝑁𝑖+1,𝑘−1(𝑢)

CHƯƠNG 3: CHƯƠNG TRÌNH THỬ NGHIỆM MÔ PHỎNG NGỌN LỬA

Có nhiều phương pháp để mô tả các đối tượng 3D, tùy thuộc vào bài toán mà ta chọn các kỹ thuật mô hình hóa 3D khác nhau.

Kỹ Thuật mô hình hóa 3D dựa trên lưới đa giác: Đây là phương pháp tổng quát nhất có thể biểu diễn được mọi bề mặt.

Kỹ Thuật mô hình hóa bề mặt có quy luật: Là phương pháp tối ưu nhất nhưng phương pháp này chỉ phù hợp với những đối tượng có quy luật chẳng hạn những đối tượng tròn xoay, còn những đối tượng khác thì phương pháp này không thể hiện được.

Kỹ thuật mô hình hóa NURBS: Là phương pháp biểu diễn bề mặt dựa trên cơ sở biểu diễn toán học của những đường cong không đồng nhất. Một bề mặt NURBS bao gồm một số đường cong được kết nối lại với nhau. Sử dụng phương pháp này khi muốn dựng các hình có độ trơn nhẵn cao và có nhiều đường cong.

Một phần của tài liệu (LUẬN văn THẠC sĩ) mô hình 3d và một số kỹ thuật mô hình hóa 3d trong mô phỏng (Trang 54 - 60)