Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 1
tái tạo mặt cong B-spline đều bậc 3 từ một tập điểm đã cho
phê
Chúng em
chúng em
Đà Nẵng, ngày 05 tháng 02 năm 2014
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 3
I. CONG BEZIER
ình dáng
-
-
I.1.
n
n
kk
k0
P t P .B t
n
Bt
(blending function).
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 4
n
Bt
và
P
n n n n
0 1 n
B t B t B t B t
0 1 n
.
n
i
Bt
ji
n i j
ni
Bez i, j 1 .C .C
.
3
1 0 0 0
3 3 0 0
Bez
3 6 3 0
1 3 3 1
+
+
+
+
Pk.
n1
'
n1
k k k k 1 k
k0
P t n. P .B t , P P P
.
I.3. t cong Bezier
Pu
không gian.
II. B-SPLINE
II.1.
n
k
Bt
n
k
Bt
t
c t 3 t 2,3
2
coù giaù mang
coù giaù mang
coù giaù mang
-1 liên
n
P t P .R t (*)
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 8
-
-
này là Nk,n(t).
-
n
k k,n
k0
P t P .N t
0 other else
-
mn
i,k i,m k,n
i 0 k 0
P u,v P .N u .N v
-Spline.
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 9
II.3. -spline
-
f(u,v) = (x(u,v),y(u,v),z(u,v))
II.3.1. Phương trình mặt cong B-spline
i,j
,
U={u
i
, |0 i n+k, u
0
u
i
u
m+p
}
V={v
j
, |0 j m+l, v
0
v
j
v
n+l
}
: S(u,v) =
m
i 0
-t
j
j+1
b
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 11
t
max
k n+l
[B] = [N]
-1
[P]
k n+l j+l (n<
[P] = [N][B]
[N]
T
[P] = [N]
T
[N] [B]
[B] = [[N]
T
[N]] [N]
T
[P]
- spline trên (N0,p(u),
k
và P
i
k
= [dk1,
Ta có: D
i
= N.P
i
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 13
B-spline có n+1
b. Nội suy toàn cục mặt cong
phép .
Cách 1:
1. Chn s u khin ti thiu
2. Dng cong xp x i suy toàn cc
3. Ki sai lch cng cong xp x ti mm d liu
4. N sai lch nc l
u khin và tr v c 2.
Cách 2:
1. Chn s u khii l ng cong xp x c tính toán
ng sai s
2. Dng cong xp x i suy toàn cc
3. Ki chính xác cng cong xp x ti mm d liu
4. N sai lch lcho phép, tr lng cong xp x
c li, gim s u khin và tr lc 2.
i,p
(u).P
i
D
0
= C(0) = P
0
D
n
= C(1) = P
h
i
-Ta có:
C(u) = N
0,p
(u)D
0
+ (
1
1
h
i
N
i,p
(u)P
(t
k
)P
i
) + N
h,p
(t
k
).D
n
]
= (D
k
N
0,p
(t
k
)D
0
N
h,p
(t
k
)D
n
) (
1
Q
k
= D
k
N
0,p
(t
k
)D
0
N
h,p
(t
k
)D
n
f() :
f(p
1
h-1
) =
1
1
h
(
1
1
h
i
N
i,p
(t
k
)P
i
)|
2
= ( Q
k
(
1
1
h
i
N
i,p
(t
k
1
h
i
N
i,p
(t
k
)P
i
) Q
k
) + (
1
1
h
i
N
i,p
(t
k
)P
i
)* (
1
1
1
h
i
N
i,p
(t
k
)P
i
) Q
k
)+(
1
1
h
i
N
i,p
(t
k
)P
i
)* (
(Q
k
Q
k
) = 0
(N
i,p
(t
k
)P
i
) Q
k
) = N
i,p
(t
k
)
Q
k
i=g :
1
1
h
i
N
i,p
(t
k
)P
i
) (
1
1
h
i
N
i,p
(t
k
)P
i
)
= (
1
1
h
i
N
i,p
(t
k
)
) (
1
1
h
i
N
i,p
(t
k
)P
i
)P
i
)
i
, P
g
g
là :
(
1
1
h
i
N
i,p
(t
k
)P
i
) (
)
f()
g
= -2 N
g,p
(t
k
)Q
k
+ 2 N
g,p
(t
k
) (
1
1
h
i
N
i,p
(t
k
)P
i
1
1
h
i
N
g,p
(t
k
)Q
k
Do có (h--1 và (h-
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 17
:
P =
1
1
n
k
1
1
n
k
(u), N
2,p
h-1,p
(u) ti tham s t
k
-1)x s, (n-1)x(h-1)
và (h-
g:
1
1
n
k
N
g,p
(t
k
)
1
1
n
i
1
1
n
k
N
g,p
(t
k
) N
i,p
(t
k
))P
i
=
1
1
n
k
N
g,p
(t
k
)Q
k
1
n
p
*Output -spline p
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 18
0
n
Let P
0
= D
0
and P
h
= D
n
for k:= 1 to h-1 do
1
1
n
k
S(u,v) =
e
i 0
f
j 0
N
i,p
(u) N
j,q
(v)P
ij
0
, S
1
m
}
0
, t
1
m
}
cd
cd
- S(s
c
,t
d
)|
2
:
f(P
00
,P
01
ef
) =
m
c 0
n
d 0
|D
cd
- S(s
c
,t
d
ij
-spline.
:
ij
-
0
,s
1
m
và nút vecto U;
0
,t
1
m
và nút vecto V;
For d:= 0 to n do /* for column d ò D */
- m d liu (D
0d
cn
//
c0
, P
c1
cf
End
III.3.-
-
*Thuật toán:
-
-
-
- thúc.
u, f(x)
i
0
+ a
1
x
1
m-1
x
i
m-1
+ a
m
x
i
m
+ e
i
i
i
= y
i
-
m
j 0
a
j
)
2
k
ta có:
( y
i
-
m
j 0
a
j
x
i
j
) / a
k
= 2 (y
i
-
m
n
i 0
( - y
i
x
i
k
+
m
j 0
a
j
x
i
j+k
m
j 0
a
j
n
i 0
x
i
2
m
n
i 0
x
i
m
=
n
i 0
y
i
a
0
n
i 0
x
i
+ a
1
y
i
x
i
a
0
n
i 0
x
i
2
+ a
1
n
i 0
x
i
3
+ a
2
n
i 0
x
i
m
+ a
1
n
i 0
x
i
m+1
+ a
2
n
i 0
x
i
m+2
m
n
i 0
x
i
m+m
=
n
i 0
n
i 0
n
i 0
n
i 0
i 0
n
i 0
n
i 0
n
i 0
n
i 0
n
i 0
n
i 0
n
i 0
1
n
i 0
y
i
x
i
m
)
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 22
0
, y
1
n
)
T
, e = (e
0
,e
1
n
T
: F
T
Fa = F
T
y
-
:
c
:
for(i=0;i<=m;i++) for(j=0;j<=nqs;j++) ft[i][j]=f[j][i];
/*Tinh ma tran vuong aa cap m, chi can tinh tinh nua tren roi gan cho nua duoi, vi ma
tran aa la doi xung */
for(i=0;i<=m;i++) for(j=i;j<=m;j++)
{ aa[i][j]=ft[i][0]*f[0][j];
for(k=1;k<=nqs;k++) aa[i][j]+=ft[i][k]*f[k][j];
}
//Gan nua duoi
Tiểu luận môn: Mô hình hóa hình học GVHD: TS. Nguyễn Tấn Khôi
Học viên thực hiện: Nguyễn Minh Quỳnh-Ngô Văn May Trang 24
for(i=0;i<=m;i++) for(j=0;j<i;j++) aa[i][j]=aa[j][i];
//Tinh ve phai cua he phuong trinh
for(i=0;i<=m;i++)
{ aa[i][m+1]=ft[i][0]*yqs[0];
for(k=1;k<=nqs;k++) aa[i][m+1]+=ft[i][k]*yqs[k];
}
for(i=0;i<=nqs;i++)
delete [] f[i];
for(i=0;i<=m;i++)
delete [] ft[i];
gjordan(aa,a,m);
//Tinh tong binh phuong cac sai so
double ss,fa,xx; ss=0; for(i=0;i<=nqs;i++)
{ fa=1;xx=1;
for(j=1;j<=m;j++)
{ xx=xx*xqs[i];
fa+=a[j]*xx;
}
ss+=(yqs[i]-fa)*(yqs[i]-fa);
}