Về mặt lý thuyết có thể sử dụng phương trình toán học bất kỳ để định nghĩa đường cong. Tuy nhiên, mô hình toán học dưới dạng phương trình đa thức được sử dụng phổ biến nhất do có đặc tính dễ dàng xử lý, đủ linh hoạt để mô tả phần lớn các loại đường cong sử dụng trong kỹ thuật.
36 trang |
Chia sẻ: haohao89 | Lượt xem: 2550 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Bài giảng Mô hình hóa các thực thể hình học, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
C3 CAD-CAM>MHHCACTTHH 1 GVC NGUYỄN THẾ TRANH
Chương 3.
MÔ HÌNH HOÁ CÁC THỰC THỂ HÌNH HỌC
3.1. MÔ HÌNH ĐƯỜNG CONG
Về mặt lý thuyết có thể sử dụng phương trình toán học bất kỳ để định nghĩa
đường cong. Tuy nhiên, mô hình toán học dưới dạng phương trình đa thức được sử
dụng phổ biến nhất do có đặc tính dễ dàng xử lý, đủ linh hoạt để mô tả phần lớn các
loại đường cong sử dụng trong kỹ thuật.
3.1.1. PHÂN LOẠI ĐƯỜNG CONG ĐA THỨC.
Mô hình toán học biểu diễn đường cong có thể dưới dạng phương trình ẩn,
phương trình tường minh hoặc phương trình tham số. Phương trình ẩn và phương trình
tường minh chỉ được sử dụng cho đường cong 2D. Đường cong đa thức tương ứng với
các dạng phương trình toán học được trình bày dưới dạng tổng quát sau:
Phương trình đa thức ẩn.
0),(
0 0
== ∑∑
= =
m
i
n
j
ji
ij yxcyxg
Phương trình đa thức tường minh.
...)( 2 +++== cxbxaxfy (theo toạ độ Đề các)
...)( 2 +++== γθβθαθhr (theo toạ độ cực)
Phương trình đa thức tham số.
...))(),(),(()( 2 +++=≡ ctbtatztytxtr
Các dạng đường cong đa thức tham số được sử dụng phổ biến nhất bao gồm:
1, Đường cong đa thức chuẩn tắc,
2, Đường cong Ferguson,
3, Đường cong Bezier,
4, Đường cong B-spline đều,
5, Đường cong B-spline không đều.
3.1.2. ĐƯỜNG CONG 2D.
Đường cong 2D được sử dụng như các đối tượng hình học cơ sở trên các bản vẽ
kỹ thuật truyền thống để mô tả hình thể 3D.
1. Mô hình đường cong dưới dạng phương trình đa thức ẩn.
Phương trình ẩn g(x,y) = 0 biểu diễn đường cong trên mặt phẳng x-y, ví dụ như
đường tròn và đường thẳng được biểu diễn bởi phương trình:
C3 CAD-CAM>MHHCACTTHH 2 GVC NGUYỄN THẾ TRANH
0)()( 222 =−−+− rbyax ; 0=++ cbyax
Mô hình này có ưu điểm:
- Dễ dàng xác định vectơ tiếp tuyến và pháp tuyến,
- Dễ dàng xác định vị trí tương đối giữa điểm với đường cong.
Phương trình đa thức bậc 2 g(x,y) = 0 biểu diễn họ đường cong conic là giao
tuyến giữa mặt cắt phẳng và mặt nón trụ. Tuỳ theo vị trí tương đối giữa mặt phẳng cắt
và mặt nón, đường cong conic có thể là:
1, Elip : 01
2
2
2
2
=−+
b
y
a
x
2, Parabôn : 042 =− axy
3, Hyperbôn : 01
2
2
2
2
=−−
b
y
a
x
Nhược điểm chính của mô hình đường cong dưới dạng phương trình ẩn là khó
thực hiện đồ hình tuần tự, đây là chức năng quan trọng trong đồ hoạ điện toán. Do vậy
trong mô hình hoá hình học, đường cong conic dưới dạng phương trình tham số được
sử dụng phổ biến hơn cả. Thực tế mô hình dạng phương trình đa thức ẩn có bậc cao
hơn 2 rất ít được sử dụng.
2. Mô hình đường cong dưới dạng phương trình đa thức tường minh.
Phương trình tường minh dạng : y = f(x) = a + bx + cx2 + ... mô tả đường
cong trên mặt phẳng x-y. Nếu f(x) là đa thức bậc 2, đường cong là Parabol.
Đặc tính tiêu biểu của đa thức tường minh là có thể chuyển đổi thành phương
trình ẩn hoặc phương trình tham số. Nếu y = f(x), trong đó f(x) là đa thức của x, tức
là:
0)(),( =−≡ xfyyxg hoặc x(t) = t ; y(t) = f(t) (3.1)
Do vậy phương trình đa thức tường minh có ưu điểm của phương trình ẩn và
phương trình tham số, đó là:
- Dễ dàng xác định vectơ tiếp tuyến và pháp tuyến.
- Dễ dàng xác định vị trí tương quan giữa điểm với đường cong.
- Dễ dàng thực hiện đồ hình tuần tự.
Nhược điểm chính của dạng phương trình tường minh là không thể điều khiển
đường cong khép kín hoặc đường thẳng đứng. Dạng phương trình (3.1) còn được gọi
là dạng phi tham số.
C3 CAD-CAM>MHHCACTTHH 3 GVC NGUYỄN THẾ TRANH
3.1.3. ĐƯỜNG CONG ĐA THỨC THAM SỐ.
Khảo sát việc thiết lập đường cong với điều kiện biên cho trước bao gồm toạ độ
và tiếp tuyến tại 2 điểm đầu và cuối: P0, P1, t0, t1. Vì rằng đường cong được định nghĩa
bởi 2 vectơ vị trí và 2 vectơ tiếp tuyến có thể biểu diễn chúng dưới dạng phương trình
đa thức vectơ bậc 3. Đa thức bậc 3 được sử dụng rất phổ biến, bởi vì đó là bậc tối
thiểu, đủ để dựng các loại đường cong trong không gian 3D.
1. Mô hình đường cong dưới dạng phương trình đa thức chuẩn tắc.
Đặc tính của mô hình đa thức chuẩn tắc là dễ dàng xác định.
Xét phương trình đa thức vectơ bậc 3:
r(u) = (x(u), y(u), z(u)) = a + bu + cu2 + du3
Có thể biểu diễn phương trình đa thức này dưới dạng ma trận theo vectơ cơ sở
U và vectơ hệ số A như sau:
[ ] UA
d
c
b
a
uuuur =
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
= 321)( với 10 ≤≤ u (3.2)
Phương trình đa thức bậc 3 (3.2) không thể hiện được ý nghĩa hình học, nhưng
có thể được sử dụng để thiết lập đường cong trơn láng đi qua 4 điểm dữ liệu { Pi: i =
1,...,4} theo phương pháp sau:
Đặt di là chiều dài cát tuyến giữa điểm Pi và Pi+1:
iii PPd −= +1 với i = 0, 1, 2
Từ đó giá trị tham số ui tại các điểm Pi được xác định như sau:
00 =u ; ∑= iddu /01 ; ∑+= idddu /)( 102 ; 13 =u
Đường cong bậc 3 (3.2) đi qua các điểm dữ liệu phải thoả điều kiện:
ii Pur =)( ; với i = 1,...,4
Tổng quát, đường cong đa thức bậc n đi qua (n+1) điểm dữ liệu được biểu diễn
bởi phương trình đa thức:
∑
=
= n
i
i
iuaur
0
)(
2. Đường cong Ferguson.
Ferguson giới thiệu một
phương pháp khác sử dụng phương
trình (3.2). Theo đó đường cong
được thiết lập bởi (Hình 3.1):
a. Hai điểm đầu cuối P0 và P1.
b. Tiếp tuyến đầu cuối t0 và t1.
r(u) t0
t1
P0
P1
Hình 3.1 - Đường cong Ferguson
C3 CAD-CAM>MHHCACTTHH 4 GVC NGUYỄN THẾ TRANH
Đường cong bậc 3 (3.2) thoả điều kiện biên P0, P1, t0, t1 chúng phải đảm bảo:
dcbrt
brt
dcbarP
arP
32)1(
)0(
)1(
)0(
1
0
1
0
++==
==
+++==
==
&
& (3.3)
Sau các phép biến đổi, hệ số PT đa thức được xác định theo biểu thức:
CS
t
t
P
P
d
c
b
a
A ≡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−
−−−=⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
=
1
0
1
0
1122
1233
0100
0001
(3.4)
Kết hợp biểu thức (3.2) và (3.4), đường cong Ferguson r(u) theo điều kiện biên
như trên được biểu diễn bởi ma trận hệ số Ferguson C và vectơ điều kiện biên
Ferguson S như sau:
S)( UCUAur == , với 10 ≤≤ u (3.5)
Thực tế dễ dàng xác định được độ lớn của vectơ tiếp tuyến, do đó độ lớn của
vectơ được chọn bằng chiều dài cát tuyến 0110 PPtt −== . Sự lựa chọn này thoả
yêu cầu về hình dáng.
Phương trình (3.2) và (3.5) đều được biểu diễn dưới dạng ma trận cơ sở. Có thể
biểu diễn (3.5) dưới dạng khác:
r(u) = (U C) S
= (1- 3u2 +2u3)P0 + (3u2 - 2u3)P1 + (u - 2u2 + u3)t0 + (-u2 + u3)t1 (3.6)
= 1
3
31
3
20
3
10
3
0 )()()()()()( PuHutuHutuHPuH +++
trong đó: )231()( 3230 uuuH +−= ; )2()( 3231 uuuuH +−=
)()( 3232 uuuH +−= ; )23()( 3233 uuuH −=
)(3 uHi là hàm kết nối Hermite bậc 3 thoả điều kiện biên tại u = 0, 1 như sau:
0)0()1()0()1(
1)1()0()1()0(
3
2
3
1
3
3
3
0
3
2
3
1
3
3
3
0
====
====
HHHH
HHHH
&&
&&
0)()()()( 32
3
1
3
2
3
1 ==== jHjHjHjH && với mọi j = 0,1
Dễ dàng xác nhận rằng phương trình (3.6) thoả điều kiện biên (3.3).
Phương trình (3.6) là định nghĩa chuẩn về đường cong kết nối Hermite.
C3 CAD-CAM>MHHCACTTHH 5 GVC NGUYỄN THẾ TRANH
3. Đường cong Bezier
Đường cong Bezier được định nghĩa bằng nhiều phương pháp.
Hãy xét phương pháp xây dựng đường cong Bezier bậc 3 từ phương trình
đường cong Ferguson (3.5).
Bốn đỉnh điều khiển Bezier V0, V1, V2, V3 (hình 3.2a) thoả điều kiện:
V0 là điểm đầu của đường cong,
V1 là vị trí 1/3 chiều dài trên vectơ tiếp tuyến đầu,
V2 là vị trí 2/3 chiều dài trên vectơ tiếp tuyến cuối,
V3 là điểm cuối của đường cong.
Đỉnh điều khiển Bezier được biểu diễn theo điều kiện Ferguson như sau:
V0 = P0 ; V1 = (V0 + t0/3) ; V2 = (V3 - t1/3) ; V3 = P1
Ngược lại, điều kiện biên Ferguson được biểu diễn theo đỉnh điều khiển Bezier
Vi là:
P0 = V0 ; P1 = V3 ; t0 = 3(V1-V0) ; t1 = 3(V3-V2)
hay dưới dạng ma trận:
LR
V
V
V
V
t
t
P
P
S ≡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−
−=⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
≡
3
2
1
0
1
0
1
0
3300
0033
1000
0001
(3.7)
Cuối cùng ta thay thế kết quả (3.7) vào phương trình đường cong Ferguson
(3.5) để đạt được phương trình đường cong Bezier bậc 3 biểu diễn bởi ma trận hệ số
Bezier M và vectơ đỉnh điều khiển R:
r(u) = U C S = U C (L R) = U (C L) R
= U M R , với 10 ≤≤ u (3.8)
trong đó:
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−−
−
−=
1331
0363
0133
0001
M ;
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
=
3
2
1
0
V
V
V
V
R
Đặc tính tiêu biểu của đường cong Bezier là hình dáng của đường cong phụ
thuộc vào đa tuyến lồi giới hạn bởi các đỉnh điều khiển ( Hình 3.2) . Tương tự như
V0=P0
V3=P1
V2 V1
t1 t0
a,
V3 V0
V1
V2
r(u)
r(u)
b,
V0
V1
V2
V3
r(u)
c,
Hình 3.2 - Đường cong Bezier bậc 3
C3 CAD-CAM>MHHCACTTHH 6 GVC NGUYỄN THẾ TRANH
đường cong Ferguson có thể biểu diễn đường cong Bezier (3.8) dưới dạng phương
trình đa thức:
∑
=
=
+++=
=
3
0
3
3
3
32
3
21
3
10
3
0
)(
)()()()(
)()(
i
ii VuB
VuBVuBVuBVuB
RUMur
(3.9)
trong đó:
330 )1()( uuB −= ; 231 )1(3)( uuuB −=
)1(3)( 232 uuuB −= ; 333 )( uuB = là đa thức Bernstein bậc 3.
Đa thức Bernstein bậc n có dạng :
inini uuin
nuB −−−= )1(!)!1(
!)( (3.10a)
Đa thức Bernstein được gọi là hàm cơ sở Bezier sử dụng để định nghĩa đường
cong Bezier bậc n bằng cách kết nối (n+1) đỉnh điều khiển:
∑
=
= n
i
i
n
i VuBur
0
)()( , với 10 ≤≤ u (3.10b)
Đường cong Bezier bậc n thoả điều kiện biên sau:
r(0) = V0 ; r(1) = V1 ;
)()0( 01 VVnr −=& ; )()1( 1−−= nn VVnr& (3.11)
Định nghĩa chuẩn về đường cong Bezier theo hàm cơ sở Bezier (3.10b) thể hiện
tính chất hình học của đường cong tốt hơn so với biểu diễn dưới dạng ma trận (3.8), ví
dụ như có thể chia nhỏ hoặc tăng bậc cho đường cong. Ngược mại dạng ma trận có ưu
điểm là dễ dàng xử lý dữ liệu.
4. Đường cong B-spline đều.
Mô hình toán học của đường cong B-spline là phương trình đại số. Ta sẽ nghiên
cứu phép dựng hình để hiểu rõ tính chất hình học của dạng mô hình này.
Xét 4 đỉnh điều khiển V0,...,V3 và các điểm M0, M1, P0, P1 với tính chất như
sau: (Hình 3.3).
M0 là điểm giữa của đoạn thẳng V0V2 : M0= (V0+V2)/2
M1 là điểm giữa của đoạn thẳng V1V3 : M1= (V1+V3)/2
P0 là điểm 1/3 của đoạn thẳng V1M0 : P0= (2V1+M0)/3
P1 là điểm 1/3 của đoạn thẳng V2M1 : P1= (2V2+M1)/3
Cần thiết lập đường cong bậc 3 r(u) thoả điều kiện:
1. Đường cong bắt đầu từ điểm P0 và kết thúc tại điểm P1,
2. Vectơ tiếp tuyến tại điểm P0 có giá trị bằng (M0-V0),
3. Vectơ tiếp tuyến tại điểm P1 có giá trị bằng (M1-V1).
Như vậy ta có thể biểu diễn điểm biên P0, P1 và tiếp tuyến t0, t1 theo đỉnh điều
khiển như sau:
C3 CAD-CAM>MHHCACTTHH 7 GVC NGUYỄN THẾ TRANH
P0≡ r(0) = [4V1+(V0+V2) ]/6 (3.12a)
P1≡ r(1) = [4V2+(V1+V3) ]/6 (3.12b)
t0≡ r& (0) = (V2 - V0) /2 (3.12c)
t1≡ r& (0) = (V3 - V1) /2 (3.12d)
hay dưới dạng ma trận:
KR
V
V
V
V
t
t
P
P
S ≡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−
−=⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
≡
3
2
1
0
1
0
1
0
3030
0303
1410
0141
6
1
Thay kết quả trên vào phương trình đường cong Ferguson (3.5) để đạt được
phương trình đường cong B-spline đều bậc 3 biểu diễn bởi ma trận hệ số B-spline
đều N và vectơ đỉnh điều khiển R:
r(u) = U C S
= U C (K R)
= U (C K) R
= U N R với 10 ≤≤ u
trong đó:
C là ma trận Ferguson
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−−
−
−=
1331
0363
0303
0141
6
1N
Tương tự như đường cong Bezier ta có thể biểu diễn đường cong B-spline đều
bậc 3 bởi hàm kết nối B-spline đều )(3 uNi :
∑
=
== 3
0
3 )()()(
i
ii VuNRUNur (3.14)
trong đó: 6/)331()( 3230 uuuuN −+−= ; 6/)364()( 3231 uuuN +−=
6/)3331()( 3232 uuuuN −++= ; 6/)( 333 uuN =
3.1.4. ĐƯỜNG CONG B-SPLINE KHÔNG ĐỀU (NURBS)
NURBS – Non-Uniform Rational B-Spline
Phần này sẽ cung cấp định nghĩa toán học về đường cong B-spline không đều
và chỉ ra rằng đường cong Bezier và B-spline đều là trường hợp đặc biệt của NURBS.
V1
V2
V3
V0
M1
M0
P0 P1 r(u) t1
t0
Hình 3.3 - Đường cong B-spline đều bậc 3
C3 CAD-CAM>MHHCACTTHH 8 GVC NGUYỄN THẾ TRANH
1. Hàm cơ sở B-spline.
Xét hàm vô hướng đệ qui )(tLni được định nghĩa theo chuỗi điểm không giảm
{ti}:
)(
)(
)()(
)(
)()( 11
1
11
1
tL
tt
tttL
tt
tttL ni
ini
in
i
ini
in
i
−
+
++
+−
−+ −
−+−
−= (3.15)
trong đó:
khác t các
],,[
,0
,1
)( 11 +
∈
⎩⎨
⎧= iii ttttL 1+< ii tt
Hàm đệ qui (3.15) được gọi là hàm đệ qui Cox-deBoor là phương pháp chuẩn
định nghĩa hàm cơ sở B-spline (bậc n-1).
Ta sẽ khảo sát hàm này để hiểu rõ tính chất hình học của chúng.
Xét n = 2:
)(
)(
)()(
)(
)()( 1 1
12
11
1
2 tL
tt
tttL
tt
tttL i
ii
i
i
ii
i
i +
++
+
+ −
−+−
−=
⎪⎩
⎪⎨
⎧
∈
∈
−−
−−
= ++
+
+++
+
khác t các
],[
],[
,0
),/()(
),/()(
21
1
122
1
ii
ii
iii
iii
ttt
ttt
tttt
tttt
Để đơn giản các phép tính đại số ta sử dụng toán tử vi phân ∇ để biểu diễn khoảng
cách giữa các điểm nút:
)( 1 iii tt −=∇ + (3.16a)
)(... 1 ikikii
k
i tt −+∇++∇=∇ +−+ (3.16b)
Sử dụng toán tử vi phân ∇ , hàm Cox-deBoor với n = 2 có giá trị:
⎪⎩
⎪⎨
⎧
∈
∈
∇−
∇−
== ++
+
++
khác t các
],[
],[
,0
,/)(
,/)(
)( 21
1
12
2
ii
ii
ii
ii
i ttt
ttt
tt
tt
tL
Với n = 3, ta có:
)()()()()( 2 12
32
2
3 tLtttLtttL i
i
i
i
i
i
i +
+
∇
−+∇
−=
⎪⎪⎩
⎪⎪⎨
⎧
∇∇−
∇∇∇−∇−∇∇−
∇∇−
=
+++
+++
0
),/()(
),/()()/()(
),/()(
2
2
1
2
3
1
2
1
2
1
322
22
iii
iiiiiiii
iii
tt
tttt
tt
],[
],[
],[
32
21
1
++
++
+
∈
∈
∈
ii
ii
ii
ttt
ttt
ttt
(3.17)
C3 CAD-CAM>MHHCACTTHH 9 GVC NGUYỄN THẾ TRANH
Biểu thức (3.17) là hàm cơ sở B-spline bậc 2.
Hình dáng chức năng của hàm cơ sở B-spline bậc nhỏ hơn 4 được thể hiện trên
hình 3.4. Vì hàm cơ sở B-spline có hình dạng khác biệt trên từng miền tham số, hàm
cơ sở trong khoảng thứ k được phân biệt bởi chỉ số thứ hai [k]:
)()(][ tLtL
n
i
n
ki ≡ với nkttt kiki ,...,2,1:],[ 1 =∈ +−+ (3.18)
Theo qui ước trên thì hàm cơ sở B-spline (3.17) trên miền tham số đầu tiên
],[ 1+∈ ii ttt được trình bày lại như sau:
)()( 33 ]1[ tLtL ii ≡ với )/()(],[ 221 iiikiki ttttt ∇∇−=∈ +−+
Hãy định nghĩa phép chuyển đổi tuyến tính giữa tham số u và t như sau:
u = (t - ti)/(ti+1 - ti) = (t - ti)/∇i (3.19)
Như được minh họa trên hình 3.5 chỉ có 3 hàm cơ sở B-spline bậc 2 có giá trị
khác không trên miền ],[ 1+∈ ii ttt , bao gồm )(3 ]3[2 tLi− , )(3 ]2[1 tLi− , )(3 ]1[ tLi− .
)./()()( 2 1
2
1
3
]3[2 iiiii tttL ∇∇−= −+−
)/()/2()/( 2 1
22
1
2
1 −−− ∇∇+∇∇−+∇∇= iiiiii uu (3.20a)
)(20 uN≡ với 10 ≤≤ u
t
t
t
t
)(1 tLi
)(2 tLi
)(3 tLi
)(4 tLi
ti ti+1 ti+2 ti+3 ti+4
Hình 3.4 - Hàm cơ sở B-spline không đều
C3 CAD-CAM>MHHCACTTHH 10 GVC NGUYỄN THẾ TRANH
)/()()./()()( 1
223
11
2
1
2
1
3
]2[1 −−−−−− ∇∇∇−∇−∇∇−= iiiiiiiii tttttL
⎭⎬
⎫
⎩⎨
⎧
∇
∇−∇
∇
∇
∇+∇∇+∇∇= −
−−
−−− 2
3
1
2
11
22
1
2
11 )/()/(
i
i
i
i
i
i
iiii uu (3.20b)
)(21 uN≡ với 10 ≤≤ u
)./()()( 223 ]1[ iiii tttL ∇∇−=−
)./()( 22 iiiu ∇∇∇= (3.20c)
)(22 uN≡ với 10 ≤≤ u
2. Đường cong B-spline không đều.
Với chuỗi điểm 3D cho trước {Pj} và hàm cơ sở B-spline (bậc 2) )(3 tLj (3.17)
trên miền tham số ],[ 1+∈ ii ttt , ta thiết lập hàm vectơ:
∑
−= +
∈= i
ij
iijj ttttLPtr
2
1
3 ],[:)()( (3.21)
Như đã minh hoạ trên hình 3.5, hàm kết nối (3.21) có giá trị khác 0 chỉ khi j=i-
2, i-1, i. Ta đặt:
V0 = Pi-2; V1 = Pi-1; V2 = Pi
từ (3.17) và (3.20) hàm vectơ (3.21) được biểu diễn bởi:
∑
−=
= i
ij
jj tLPtr
2
3 )()( với ],[ 1+∈ ii ttt
)()()( 33 11
3
22 tLPtLPtLP iiiiii ++= −−−− với ],[ 1+∈ ii ttt (3.22)
)()()( 3 ]1[2
3
]2[11
3
]3[20 tLVtLVtLV iii ++= −−
)()()( 222
2
11
2
00 uNVuNVuNV ++=
)(urRUNq ≡= với ]1,0[∈u
trong đó: [ ]21 uuU = ; [ ]TVVVR 210=
ti-2 ti+1ti-1 ti ti+2
3
1+iL
ti+3
3
]2[1−iL
3
]1[iL
3
]3−iL
3
]3[2−iL
Hình 3.5 - Hàm cơ sở B-spline bậc 2 khác 0 trên miền [ti, ti+1][2]
t
C3 CAD-CAM>MHHCACTTHH 11 GVC NGUYỄN THẾ TRANH
⎥⎥
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎢⎢
⎣
⎡
∇
∇
⎭⎬
⎫
⎩⎨
⎧
∇
∇−∇
∇
∇
∇∇∇
∇∇∇∇−
∇∇∇∇
=
−
−−
−
−−
−−−
22
3
1
2
11
2
1
2
1
2
1
2
11
2
1
)/(
0)/2()/2(
0)/()/(
i
i
i
i
i
i
i
i
ii
iiii
iiii
qN :
)( 1 iii tt −=∇ + ; ,...12 +∇+∇=∇ iii
và đường cong (3.22) được gọi là đường cong NUBRS bậc 2.
Khảo sát giá trị của hàm kết nối B-spline không đều bậc 2, ta có thể rút ra kết
luận: đường cong NURBS bậc 2 được hỗ trợ bởi 6 điểm nút ti-2 đến ti+3, ngay cả khi
miền tham số xác định là [ti, ti+1] (Hình 3.5). Tuy nhiên các điểm biên ti-2 và ti+3 không
cần thiết bởi vì dữ liệu này không được sử dụng để xác định đường cong. Do đó đường
cong NURBS bậc 2 hoàn toàn được xác định bởi 3 giá trị bước nút 11 ,, +− ∇∇∇ iii và 3
đỉnh điều khiển V0, V1, V2.
Tương tự ta có đường cong NURBS bậc 3 có dạng như sau:
∑
−=
= i
ij
jj tLPtr
3
4 )()( với ],[ 1+∈ ii ttt (3.23)
r(u)R ≡= cUN với ]1,0[∈u
3. Trường hợp đặc biệt của đường cong NURBS.
Qua khảo sát ta thấy rằng đường cong NURBS bậc 3 (3.23) có dạng tương tự
như đường cong B-spline đều bậc 3 (3.13), nhưng ma trận hệ số Nc không phụ thuộc
vào khoảng cách giữa các điểm nút. Do vậy với cùng tập hợp đỉnh điều khiển, ta có thể
đạt được hình dáng đường cong khác nhau bằng cách thay đổi khởng cách giữa các
điểm nút.
Khi tất cả điểm nút {ti} được xác định trên miền số nguyên liên tục và khoảng
cách giữa chúng đều nhau, nếu đặt ∇i = 1, với mọi i và từ đó 22 =∇ i ,..., ma trận hệ
số Nc của đường cong NURBS (3.23) trở thành ma trận N của đường cong B-spline
đều bậc 3 (3.13).
Như vậy đường cong B-spline đều bậc 3 (3.13) là trường hợp đặc biệt của
đường cong NURBS khi khoảng cách giữa các điểm nút đều nhau.
Tương tự, đường cong NURBS có thể trở thành đường cong Bezier nếu đặt các
giá trị:
ti-2 = ti-1 = ti = 0; ti+1 = ti+2 = ti+3 = 1
Từ đó ta có khoảng cách giữa các điểm nút tương ứng có giá trị như sau:
∇i = 1; ∇j = 0, với mọi ij ≠
Điều này làm cho ma trận hệ số B-spline không đều bậc 3 Nc (3.23) biến đổi
thành ma trận hệ số M của đường cong Bezier bậc 3 (3.8).
Ma trận hệ
số B-spline
không đều
bậc 2
C3 CAD-CAM>MHHCACTTHH 12 GVC NGUYỄN THẾ TRANH
Vậy cả 2 đường cong B-spline đều và Bezier chỉ là trường hợp đặc biệt của
dường cong NURBS.
3.1.5. ĐƯỜNG CONG HỮU TỶ.
Hàm hữu tỷ được định nghĩa như là tỷ số của 2 hàm đa thức. Đường cong hữu
tỷ có độ linh hoạt về hình dáng cao hơn so với các dạng đường cong đa thức chuẩn tắc
khác. Đường cong hữu tỷ sẽ có dạng đa thức chuẩn tắc nếu như được biểu diễn theo hệ
toạ độ đồng nhất. Ta sẽ khảo sát dạng hữu tỷ của mô hình đường cong Bezier.
1. Toạ độ đồng nhất.
Ta đã biết phương trình tham số của đường tròn đơn vị như sau:
r(u) = (x(u), y(u), z(u))
= ((1-u2)/(1+u2), 2u/(1+u2), 0/(1+u2))
Vì mỗi tyhành phần của vectơ 3D trên có cùng mẫu số, nên ta có thể chuyển
chúng thành vectơ đồng nhất 4 thành phần R(u) với 3 thành phần đầu tiên ứng với tử
số và thành phần thứ 4 ứng với mẫu số chung:
R(u) = ((1-u2), 2u, 0, (1+u2)) = (X(u), Y(u), Z(u), h(u))
Vectơ R(u) được gọi là vectơ đồng nhất và thành phần của chúng trở thành toạ
độ đồng nhất của điểm 3D (r(u)). Ta có thể chuyển đổi (X, Y, Z, h) thành (X/h, Y/h,
Z/h, 1) tức là thành (x, y, z, 1). Sự chuyển đổi này gọi là sự chuẩn hoá. Ý nghĩa hình
học của sự chuẩn hoá là vectơ 4D được chiếu lên mặt phẳng h = 1 trong không gian 4
chiều.
Như vậy vectơ đồng nhất (x, y, z, 1) và (hx. hy, hz, h) biểu diễn cùng một điểm
3D (x, y, z) nếu 0≠h . Theo mô hình hữu tỷ mõi dỉnh điều khiển Vi(xi, yi, zi) được
định nghĩa như đỉnh điều khiển đồng nhất:
Hi = (wixi, wiyi, wizi, wi )
trọng số wi làm tăng tính linh hoạt về hình dáng.
Biểu diễn toạ độ Đề các dưới dạng đồng nhất được sử dụng rộng rãi trong các
phép biến đổi tạo độ ứng dụng trong đồ hoạ cũng như Robot học.
2. Đường cong hữu tỷ bậc 2.
Nếu vectơ đỉnh điều khiển Bezier chuẩn tắc được thay thế bởi vectơ đồng nhất
tưong ứng ta sẽ đạt được đường cong Bezier hữu tỷ.
Đường cong Bezier bậc 2 có dạng: