You are on page 1of 33

BỘ CÔNG THƯƠNG

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP

Chương 5. MẶT CONG


1. Mặt cong
Mặt cong đóng vai trò quan trọng trong thiết kế, chế tạo:

+ Xuất dữ liệu cho máy CNC

+ Mô phỏng tính toán

+ Tạo mẫu nhanh

+ Tạo hình ảnh thật .vv…

1
1. Mặt cong
Phân loại mặt cong:

+ Dạng tham số (parametric surface)

+ Dạng ẩn (nonparametric surface)

- Dạng tham số: độ điểm x,y,z trên mặt cong được biểu
diễn thông qua tham số : P(x(t), y(t), z(t))=0

- Dạng ẩn: độ điểm x,y,z trên mặt cong được biểu diễn qua
một hàm : P(x,y,z)=0

2
1. Mặt cong
Phương trình mặt cong ellipsoid:
parametric surface nonparametric surface
 x( ,  )  a cos( ) sin( ) x2
y 2
z 2
 0    2
 y ( ,  )  b sin( ) cos( ) 2
 2  2 1
 z ( ,  )  c. cos( ) 0    2 a b c

3
1. Mặt cong
Trong chương này ta khảo sát mặt cong:

+ Mặt cong song tuyến tính (bilinear surface)

+ Mặt cong bậc hai (Quadric surface)

+ Mặt cong bậc ba (bicubic surface)

+ Mặt cong tự do: Bezier, B_Spine, NURBS surface)

4
2. Mặt cong song tuyến tính (bilinear surface)
Mặt cong song tuyến tính được xây dựng bằng cách nội suy
thông qua 4 điểm dự liệu cho trước.

P0,0 , P1,0 , P0,1 , P1,1 : tọa độ 4 điểm góc

P0, , Pu, Các đoạn chia theo tỉ lệ:

: (1- )

u: (1- u)
 P0,  1   P0, 0   .P0,1
Tọa độ các điểm P0, , P1, 
 P1,  1   P1, 0  .P1,1

5
2. Mặt cong song tuyến tính (bilinear surface)
Tương tự tọa độ điểm bấc kỳ Pu,
P

P
u ,  1  u  0 ,  u. 1,

Thế P0, , P1, vào Pu,

P P

P
Phương trình mặt cong bilinear dạng tham số:
 0, 0 
 
P

 [1  u 1   u 1   1  u  u ]
1, 0 
u ,
 

P
0 ,1
 
 1,1 
0  u ,  1
6
2. Mặt cong song tuyến tính (bilinear surface)
Ví dụ: Cho tọa độ 4 điểm: P0,0(10,10,0), P1,0(15,0,0),
P0,1(0,15,5) và P1,1(0,0,10) thuộc mặt phẳng 3D. Xác định:

a. Pt tham số mặt phẳng song tuyến tính qua 4 điểm

b. Xác định tọa độ điểm với tham số u==0.3

P P

P
Phương trình mặt cong bilinear dạng tham số:
 0, 0 
 
P

 [1  u 1   u 1   1  u  u ]
1, 0 
u ,
 

P
0 ,1
 
 1,1 

7
10 10 0 
15 0 0 
P

u ,  [1  u 1   u 1   1  u  u ] 
 0 15 5 
 
 0 0 10
P

(u, )  (1  )(10  5u ) , (1  u )(10  5 ), 5 (1  u ) 

P
Tọa độ tại điểm u==0.3 (0.3,0.3)  8.05 , 8.05 , 1.95

8
3. Mặt cong bậc ba kép (Hermite bicubic surface)

Mặt cong tham số bậc ba được tạo bởi các đuờng biên là
các đuờng cong tham số bậc ba hoặc các đường cong
Hermite.

9
3. Mặt cong bậc ba kép (Hermite bicubic surface)

Phương trình mặt cong tham số bậc 3:

P
3 3
(s, t )   aij s i t j (0  s, t  1)
i 0 j 0

Phương trình viết lại dạng ma trận:

a00 a01 a02 a03   1 


a   
P


(s, t )  1 s s 2

s 3  10
a20
a11
a21
a12
a22
a13   t 

a23 t 
 2

  3 
 a30 a31 a32 a33  t 
aij: hệ số vectơ đại số với các thành phần x, y và z
10
3. Mặt cong bậc ba kép (Hermite bicubic surface)
Ta cần 16 điều kiện biên xác định 16 hệ số aij
+ 4 điểm góc

+ 8 vectơ tiếp tuyến tại các góc

+ 4 vectơ xoắn tại các góc

11
3. Mặt cong bậc ba kép (Hermite bicubic surface)

Thay 16 điều kiện biên, PT tham số mặt cong bậc ba (kép

s
M

M
t
(s, t )    H . H .   
COONS): T T
. H
s

t
   s 3     t 3 
Với:
s2 s 1 t2 t 1

 2 2 1 1
 3 3  2  1
M

[M]H : ma trận Hermite  H  


0 0 1 0
 
1 0 0 0
12
3. Mặt cong bậc ba kép (Hermite bicubic surface)

s
M

M
t
(s, t )    H . H .   
T T
. H

Ma trận [G]H được biểu diễn:


 P(0,0) P (0,1) Pt (0,0) Pt (0,1) 
 P (1,0) P (1,1) P (1,0) P (1,1) 
G

 H   t t 
 Ps (0,0) Ps (0,1) Pst (0,0) Pst (0,1)
 
 Ps (1,0) Ps (1,1) Pst (1,0) Pst (1,1) 
Vị trí các góc Vectơ tiếp tuyến
hướng t
Vectơ tiếp tuyến Tích vectơ tại các
hướng s góc
13
3. Mặt cong bậc ba kép (Hermite bicubic surface)

Hình dáng mặt cong thay đổi khi thay đổi điểm góc, vectơ
tiếp tuyến hoặc vectơ xoắn.

Pháp tuyến tại bấc kỳ điểm nào của đường cong tham số
bậc ba:

Vectơ pháp tuyến đơn vị

14
3. Mặt cong bậc ba kép (Hermite bicubic surface)
Ví dụ: Mặt cong tham số bậc 3 kép được xác định bởi các
thành phần trong hệ tọa độ Decarte:
5 1 0 2  t 3  1 0 1 1  t 3 
1    
1 0 1  t 2  0 0 1 0 t 2 

x (s, t )  s 3 s2 
s 1
1 2 1 1  t 

y(s, t )  s 3 s2 
s 1
3 1 0 2  t 
     
0 2 0  1  1  1 0 2 1   1 

0 1 2 1  t 3 
2  
1 0 0 t 2 

z(s, t )  s 3 s2 
s 1
0 5 1 0  t 
  
0 1 0 0  1 

Tính vectơ tiếp tuyến theo các hướng tham số và vectơ


pháp tuyến đơn vị tại điểm t=1, s=1/2

15
t 3  3t 2 
   
Ps

Pt

  3s 2 2s 1 0  
related t 2 
 
  s3 s2 s 1
related  2t 

matrix   t  matrix   1 
   
 1   0 
5 1 0 2  1 5 1 0 2   3
1 1  1 1
1 0 1 0 1  2
xs ( s, t )  0,75 1 1 0   14 xt ( s, t )  0,125 0,25 0,5 1   11,375
1 2 1 1  1 1 2 1 1  1 
     
0 2 0  1 1 0 2 0  1 0
1 0 1 1  1 1 0 1 1   3
0 0 1 0 1 0 0 1 0 2
y s ( s, t )  0,75 1 1 0   9,25 yt ( s, t )  0,125 0,25 0,5 1   11,25
3 1 0 2 1 3 1 0 2  1 
     
1 0 2 1  1 1 0 2 1  0 
0 1 2 1 1 0 1 2 1  3
2 1 0 0 1 2 1 0 0 2
z s ( s, t )  0,75 1 1 0   12 zt ( s, t )  0,125 0,25 0,5 1   10
0 5 1 0 1 0 5 1 0  1 
     
0 1 0 0 1 0 1 0 0 0 

Tính vectơ tiếp tuyến theo các hướng tham số


Ps

Pt

  14i  9,25 j  12k   11,375i  11,25 j  10k

16
Vectơ pháp tuyến đơn vị:
N N

P sP s
P tP t
n

 
ˆ 
 
(9,25.10  12.11,26) (14.10  12.11,375) (14.11,25  9,25.11,37)
 i j k
67,47 67,47 67,47
 0,63i  0,05 j  0,77 k

Trong đó:
Ps
P

  t  (9,25.10  12.11,26) 2  (14.10  12.11,375) 2  (14.11,25  9,25.11,37) 2


 67,47

17
4. Mặt cong Bezier (Bezier surface)
- Mặt cong bậc ba kép tiếp tuyến vectơ xoắn khó hình dung.

- Mặt cong Bezier dễ tạo, chỉnh sửa một cách trực giác.

- Phương trình tham số mặt cong Bezier:


P

s
M

V
M
t
(s, t )   
. B . B . TB  T

[M]B : ma trận Bezier

[V]B : Ma trận tọa độ các điểm điều khiển

18
4. Mặt cong Bezier (Bezier surface)
Tính chất mặt cong Bezier:

+ Hình dạng mặt cong phụ thuộc các điểm điều khiển

+ Mặt cong nằm miền bao lồi các điểm điều khiển

+ Các điểm góc và các điểm điều khiển tại góc trùng nhau.

19
4. Mặt cong Bezier (Bezier surface)

+ 4 điểm góc nằm trên chính mặt cong

+ Vectơ tiếp tuyến góc xác định với các điểm kề trên biên

+ Các điểm nằm bên trong xác định hình dạng mặt cong
(xoắn)
20
4. Mặt cong Bezier (Bezier surface)
Mặt cong Bezier bậc nhất theo 2 hướng s, t
P
 1 1  P0, 0 P0,1   1 1 t 
( s, t )  s 1 P

 1 0  1, 0 P1,1   1 0 1

Mặt cong Bezier bậc 2 theo 2 hướng s, t với 9 điểm điều khiển

 1  2 1  P0, 0 P0,1 P0, 2   1  2 1 t 2 


P


( s, t )  s 2 
  
s 1  2 2 0  P1, 0 P1,1

P1, 2   2 2 0  t 
 
 1 0 0  P2, 0 P2,1 P2, 2   1 0 0  1 

21
4. Mặt cong Bezier (Bezier surface)
Mặt cong Bezier bậc 3 theo 2 hướng s, t với 16 điểm điều khiển

 1 3  3 1
3 6 3 0
P


( s, t )  s 3 s 2 s 1   3 3 0 0
 
1 0 0 0
 P0, 0 P0,1 P0, 2 P0,3    1 3  3 1  t 3 
P P1,3   3   2
 1, 0 P1,1 P1, 2
 6 3 0 t
 
 P2, 0 P2,1 P2, 2 P2,3   3 3 0 0 t 
   1 
 P3, 0 P3,1 P3, 2 P3,3   1 0 0 0  

22
4. Mặt cong Bezier (Bezier surface)
Ví dụ: Cho ma trận tọa độ các điểm điều khiển mặt cong
Bezier. Hãy tìm tọa độ x, y, z trên mặt cong tại s=t=0.5.

(0,0,0) (0,2,0) (0,4,0) (0,6,0) 


 (2,0,1) 
V

(2,2,3) (2,4,2) (2,6,0)


 B 
(4,0,2) (4,2,4) (4,4,3) (4,6,1) 
 
(6,0,0) (6,2,2) (6,4,4) (6,6,0) 

Giải: Phương trình tham số mặt cong Bezier qua 16 điểm điều
P

s
M

V
M
t
khiển
(s, t )    B . B .   
T T
. B

23
 1 3  3 1  P0, 0 P0,1 P0, 2 P0,3    1 3  3 1  t 3 
3  P1,3   3
6 3 0  P1, 0 6 3 0 t 
P


( s, t )  s 3
s 2

s 1
 3 3 0 0  P2, 0
P1,1
P2,1
P1, 2
P2, 2

P2,3   3
 
3 0 0 t 
   
1 0 0 0  P3, 0 P3,1 P3, 2 P3,3   1 0 0 0 1 

Thay thế các giá trị s,t vào điểm điều khiển vào ta có:
 1 3  3 1  0 0 0 0   1 3  3 1   0 .5 3 
3 6 3 0 2 2 2 2  3 6 3 0 0.5 
x


(0.5,0.5)  0.53 0.52 
0. 5 1 
 3 3 0 0  4 4 4 4   3

3 0 0   0 .5 
3
   
1 0 0 0 6 6 6 6  1 0 0 0 1 
  1 3  3 1  0 2 4 6   1 3  3 1 0.53 
 3 6 3 0  0 2 4 6  3 6 3 0 0.5 
y


(0.5,0.5)  0.53 0.52 0.5 1  
  3 3 0 0  0 2 4 6  3 3 0 0 

0 . 5
3

   
 1 0 0 0  0 2 4 6  1 0 0 0 1 

24
 1 3 3 1  0 0 0 0   1 3 3 1   0 .5 3 
3 0 1 0  3 0 0.5 
z


(0.5,0.5)  0.53 0.52 
0 .5 1 
 3
6 3
0  2
3 2
1  3
6 3

0 

0 . 5
  2.15
3 0 4 3 3 0 
   
1 0 0 0 0 2 4 0  1 0 0 0 1 

Tọa độ x, y, z trên mặt cong P(0.5, 0.5)=(3,3,2.15)

25
5. Mặt cong B-spline (B-spline surface)
- Phương trình tham số mặt cong B-spline
P
n m
(s, t )   N i ,1 ( s ).N j ,1 (t )Vi , j
i 0 j 0

Ni,1 , N1,j :hàm uốn B-spline

Vi,j : Các điểm điều khiển

26
5. Mặt cong B-spline (B-spline surface)
Tính chất mặt cong B-spline:

+ Mặt cong B-spline được điều khiển cục bộ chỉ 1 phần
nhỏ mặt cong bị ảnh hưởng khi điều khiển

27
5. Mặt cong B-spline (B-spline surface)
- Phương trình tham số mặt cong B-spline tuần hoàn:

s
M

V
M
t
(s, t )    Bs . B .   
T T
. Bs

[M]Bs : ma trận B-spline

[V]B : Ma trận tọa độ các điểm điều khiển

Bậc 2 Bậc 3

 1 3  3 1
 1  2 1  3 6 3 0
M
M

1
 Bs 1
  2 2 0  Bs 
2 6  3 0 3 0
 1 1 0  
1 4 1 0
28
5. Mặt cong B-spline (B-spline surface)
Ví dụ: Cho ma trận tọa độ các điểm điều khiển mặt cong B-
spline tuần hoàn. Hãy tìm tọa độ x, y, z trên mặt cong tại
s=t=0.5.
(0,0,0) (0,2,0) (0,4,0) (0,6,0) 
 (2,0,1) (2,2,3) (2,4,2) (2,6,0)
V

 B 
(4,0,2) (4,2,4) (4,4,3) (4,6,1) 
 
(6,0,0) (6,2,2) (6,4,4) (6,6,0) 

Giải: Phương trình tham số mặt cong B-spline qua 16 điểm


P

s
M

V
M
t
điều khiển
(s, t )   
. Bs . B . TBs  T

29
 1 3  3 1  P0, 0 P0,1 P0, 2 P0,3    1 3  3 1  t 3 
 P1,3   3  6 3
 3 6 3 0  P1, 0 0 t 
P

( s, t ) 
36

1 3 2
s s 
s 1
 3 0 3 0  P2, 0
P1,1
P2,1
P1, 2
P2, 2

P2,3   3 0 3
 
0 t 
   
1 4 1 0  P3, 0 P3,1 P3, 2 P3,3   1 4 1 0 1 

Thay thế các giá trị s,t vào điểm điều khiển vào ta có:

 1 3  3 1  0 0 0 0   1 3  3 1   0.5 3 
 3 6 3 0 2 2 2 2  3  6 3 0 0.5 
x

(0.5,0.5) 
1
0.53 0.52 
0.5 1 
 3 0 0 4 4 4 4  3 0 0 

0 . 5
3
36 3 3 
    1 
1 4 1 0 6 6 6 6  1 4 1 0  
 1 3  3 1  0 2 4 6   1 3  3 1   0.5 3 
 3 6 3 0 0 2 4 6  3  6 3 0 0.5 
y

(0.5,0.5) 
1
36
0.53 0.52 
0.5 1 
 3 0 3 0  0 2 4 6   3 0 3

0   0.5 
3
   
1 4 1 0  0 2 4 6  1 4 1 0 1 

30
 1 3  3 1  0 0 0 0   1 3  3 1   0 .5 3 
 3 6 3 0 1 3 2 0  3  6 3 0 0.5 
z

(0.5,0.5) 
1

0 .5 3 0 .5 2 
0 .5 1 
 3 0 0  2 4 3 1  3 0 0 

0 . 5
  2.855
36 3 3 
   
1 4 1 0 0 2 4 0  1 4 1 0 1 

Tọa độ x, y, z trên mặt cong P(0.5, 0.5)=(3,3,2.855)

31
Ví dụ: Cho tọa độ 4 điểm: P0,0(10,10,5), P1,0(15,0,0),
P0,1(0,15,5) và P1,1(0,0,5) thuộc mặt phẳng 3D. Xác định:

a. Pt tham số mặt phẳng song tuyến tính qua 4 điểm

b. Xác định tọa độ điểm với tham số u==0.2

P P

P
Phương trình mặt cong bilinear dạng tham số:
 0,0 
 
P

 [1  u 1   u 1   1  u  u ]
1, 0 
u ,
 

P
0 ,1
 
 1,1 

32

You might also like