Đường cong B-Splines đều, 2D được định nghĩa như sau:
F2(u,v) = (x,y) = Nu i Nv j ij j i u B v P B 0 0 ) ( ) (
Trong đó, mỗi điểm (x,y) được chuyển thành toạ độ tham số (u,v) với 0u,v1. Nu, Nv là số lượng các điểm đặc trưng theo hai chiều tương ứng (u,v).
Bi(u), Bj(v) là các hàm hợp B-Splines bậc 3, đều. Nếu Nu=Nv = 4 thì ta có 4 hàm hợp như trong trương hợp 1D. Pij là điểm điều khiển ở hàng i-1 và cột j-1.
Không mất tính tổng quát, ta sẽ xem xét trong trường hợp Nu=Nv=4, khi đó ta với mỗi đối tượng A bất kỳ, ta dựng lên một hình hộp AABB bao quanh nó, gọi (xmin,ymin), (xmax,ymax) là toạ độ trên và dưới của hộp bao. Ta sẽ xác định một hàm B-Splines Volume cho đối tượng này như sau:
Đặt Dx = xmax-xmin, Dy = ymax-ymin
Ta xác định tập các điểm điều khiển (16 điểm) trên hộp bao này như sau: Điểm điều khiển thứ i,j (0i, j3) sẽ có toạ độ:
Pi,j(x) = xmin+ i*Dx/4 Pi,j(y) = ymin + j*Dy/4
Với mỗi điểm (x,y) thuộc đối tượng (tổng quát là với mỗi điểm (x,y) nằm trong hộp bao) ta ánh xạ (x,y) thành toạ độ tham số (u,v) như sau:
u = (x-xmin)/Dx v = (y-ymin)/Dy
Khi đó, xây dựng một hàm B-Splines 2D bậc 3, đều, xác định bởi 16 điểm đặc trưng trên được gọi đường B-Splines bao quanh đối tượng.
Các tính chất của đường bao B-Splines:
Nếu tập các điểm đặc trưng không bị thay đổi vị trí, nghĩa là điểm đặc trưng Pi,j sẽ có toạ tham số là (i,j) với (0i,j3) thì một điều thú vị là với mọi điểm (u,v) khi thay vào công thức xác định bởi đường B-Splines 2D ở trên, ta vẫn thu được chính giá trị (u,v) cũ, thật vậy:
F2((u,v)) = 3 0 3 0 ) ( ) ( i j ij j i u B v P B = (u,v)
Ta có thể kiểm chứng bằng cách thay Pij = (i,j), các hàm hợp Bi(u) và Bj(v) được xác định như trên thì sẽ ra đpcm.
Giả sử, tập các điểm điều khiển đã bị thay đổi (ít nhất có một điểm Pij đã bị thay đổi). Gọi C0 = {Pij} là tập các điểm điều khiển khởi tạo (không có điểm nào bị thay đổi vị trí), C1
= {Pij’} là tập các điểm điều khiển đã bị thay đổi vị trí. Đặt C = C1-C0 ={Pij, 0i,j3 }.
Khi đó, phương trình đường B-Splines 2D ở trên được viết dưới dạng sau: F2((u,v)) = (u,v) + 3 0 3 0 ) ( ) ( i j ij j i u B v P B Nhận xét:
Một lần nữa, ta có thể khẳng định nếu tập các điểm đặc trưng không bị thay đổi thì Pij = 0 với mọi 0i,j3 F2(u,v) = (u,v) với mọi 0u,v1.
Nếu tập có một điểm đặc trưng Pij thay đổi vị trí thì một số đoạn cong liền kề với Pij sẽ bị thay đối theo công thức trên. Điều đó nói lên rằng, sẽ có một số điểm (u,v) bên trong hộp bao cũng bị thay đổi theo. Đây chính là tư tưởng chính của thuật toán bóp méo tự do sử dụng hàm B-Splines 2D bậc 3, đều.