You are on page 1of 93

Amirkabir University Of

Technology

)(CAD/CAM/CAE

1386

: ) ( CAD
C/C

-
C/C
C/C

Spline

Bezier

B-Spline

NURBS

: ) ( CAM
CNC
)Computer Aided Process Planning (CAPP

:
Textbook:

Ibrahim Zeid, Mastering CAD/CAM, McGraw-Hill, Inc., ISBN 0-07286845-7, 2005

Reference:

-Kunwoo Lee, principles of CAD/CAM/CAE Systems, ISBN 0-201-38036-6, Addison-Wesley, 1999


)Computer Aided Design (CAD



.
.
.


. CAD/CAM/CAE

.

) (CAD/CAM/CAE :


.
.


CAD/CAM/CAE
.

CAD/CAM/CAE
.

) (
.
CAD/CAM/CAE
.
:

Network topologies

Ethernet

CAD/CAPP/CAPP/CAM .

(Interactive)

CAD architecture

VRD

Vector Refresh Display

DVST

Direct View Storage Tube

RSD

Raster Soon display

CRT

Cathod Ray Tube

LCD

Liquid Crystal Display

DLP

Digital Light

LCoS

Liquid Crystal Sillicon

RAM

.
user interface .
.

:CAD/CAM
6 :
-1 .
Computer system software, Compiler,

-2 .

)(Graphics software

CAD/CAM .
) (
-3 .
CAD/CAM Communication -
. .
.
10

CAD/CAM System software

-3 Product modeling software . 2 -


3 2/5 . 2/5
.
interface
CAD/CAM .
-4 ) Application software .
NC (...
CAD CAM .
-5 User User developed software
.
6 .

CAD/CAM

CAD/CAM :
-1 : ... .
-2 : . customization
NC ) (
-3 :
user interface D-Base .

11

:System manager install ) (Bugs Back

up .

:

.
.
. .
CAM
.

.
Lead time .
Process Planning ....
) ( .
2 .
2/5 2/5 .
2/5 .

3:
Wire Frame -1
12

Surface Modeling -2
Solid Modeling -3
Surface and solid modeling -4

: Wire frame -1 :
.
.
.
. .. .
.

.

: Surface Modeling -2

. CNC .
13


... . .
... .
. ... .
:Solid Modeling -3
.
):(CSG) Constructive Solid Geometry (a
):(B-rep.) Bounding representation (b

):(CSG) Constructive Solid Geometry (a


.
... .

14

Solid Modeler CSG .

CSG interface B-rep.

Alternative CSG models of an object

15

C.S.G storage data base

16

):(B-rep.) Bounding representation (b


B-rep sweep ... .
Revolve ...

17

18

B.rep storage data base

: CSG B-rep .
(1

19


Data Base .
B-rep ...
. B-rep

.
(2 ... CSG
. D.B B-rep D.B
.

20

A B-rep model

( solid surface
D.B Difference solid interface

.
.

: CMM
.

. ... . CMM

. -
.
21

surface modeling
.
surface solid difference solid solid
solid surface.

:
.
. .
.
: CMM
modeling .

.
.
) ( .
CAD/CAM .
.
CMM
.
CMM
.
22

: CAD/CAM
) ( )(
:
:

(1) y = mx + c

) (:

(2) ax + by + c = 0

)( :
(3) ax2 + by2 + 2 xxy + 2 fx + 2 gy + d = 0

:
CAD/CAM .
m .
y .
.
.
.
.
2 .
3 ) (... .

23

CAD ) (
...
. 3 y .
CAD
.
CAD ) entity (
) (
.
.
3 x ) (uneven
.

CAD .
) (faired shape .
:Faired shapes
) (aero fail .

.
.
.
: )) (y=f(x
2
24

.
.
.

. .

. -
.
.

faired shapes .
CAD .

:
x y z
. )
(
) (u . .
) (u,v .

25

) (u,v,w .
) y = f( x g (n, y) = 0 .
.
u
.

) P = P(u ) y ( x ) x = x ( u

= y

) z = z(u . x y z u.
P (u ) = ( x, y, z)T = ( x(u ) y(u ) z(u ))T
umin < u < umax

.
umin umax . u 0 1 -
.
-
.


26


x2 + y 2 = R2 :

0 u 1

y = R sin 2u

x = R cos 2u
R2 cos 2 2u + y 2 = R2

P (u ) = ( R cos 2u R sin 2u )T

: u 0 1 .
x=a x=b .
.

:
CAD/CAM ) (
) (...
... Free Form .
Free Form.
) :
(.
) (1 .
) (2 .

:
-1 Inter polation.
27

-2 . approximation-
.

:
.
.
) : (C 0 .

)
( C 1 . .

28

)
( C 2
smoth .
C 2 CAD/CAM . C 3 ...
.
C 2 2.
. C 2
3 C 0
C 1 C 2 .

) (smoothness .

: CAD/CAM

Spline

Bezier

B-Spline

NURBS

:CAD/CAM
CAD/CAM 3 :
-1 Cubic Spline

29

-2 Bezier
-3 B- Spline


.
: Cubic Spline spline 3 ) (data points
Interpolation.
: Bezier B- Spline
approximation . B-

Spline .
) Non uniform rotational Nurbs(
spline 3 free

form .
smooth

:3
: Cubic Spline
. 3
.

30

3 .
spline 3 . Hermit

interpolation.

.

3
:
x = a1 + b1u + c1u 2 + d1u 3
y = a 2 + b2 u + c2 u 2 + d 2 u 3
z = a 3 + b3u + c3u 2 + d 3u 3

:
P = P (u ) = K0 + K1u + K2 u 2 + K3u 3

K0 ,...., K3 a1 ,...., a 3 b1 ,....,b3 .


3

P (u ) = Kiu
i =0

dp

du

) P (u ::

P = P (u ) = K1 + 2 K2 u + 3K3u 2
0 u 1

P (u ) = Ki i u i 1
i =1

31

K C.S. P0 P1 .
P0 P0 u = 0 P1 P1 u = 1 .

P0 P1 P0 P1 .
.
P0 = K0

) (1

P0 = K1

) (2

P1 = K0 + K1 + K 2 + K3

) (1

P1 = K1 + 2 K 2 + 3K3

) (2

u=o

u =1

.
u = 0 u = 1 .
K2 + K3 + P1 P0 P0

P1 = P0 + P0 + K2 + K3

2 K 2 + 3K3 = P1 P0

P1 = P0 + 2 K 2 + 3K3

2 K + 2 K3 = 2 P1 2 P0 2 P0
{ 2
2 K2 + 3K3 = P1 P0

K 2 = 3P1 3P0 P1 2 P0
K3 = 2 P0 2 P1 + P0 + P1
K3 = 2( P0 P1 ) + P0 + P1

K 2 + 2 P0 2 P1 + P0 + P1 = P1 P0 P0
K 2 = 3P0 3P1 2 P0 P1
32

K 2 = 3( P1 P0 ) 2 P0 P1

P (u ) = K0 + K1u + K 2 u 2 + K3u 3 :
) P (u ) = P0 (1 3u 2 + 2u 3 ) + P1 (3u 2 2u 3 ) + P0(u 2u 2 + u 3 ) + P1(u 2 + u 3
P=UCS

0 u 1

1 0 0 0 P0
0 0 1 0 P
2
3
1
P (u ) = [1 u u u ]
3 3 2 1 P0

2 2 1 1 P1

u x P0 P0 P1 P1 y

z .

Hermite Curves

: Hermit ) P0 = (0,4) P1 = (6,5) P0 = (1,1 ) P1(4,0 .


x(0.5) = 1(1 3(0.5) 2 + 2(0.5) 3 ) + 6(3(0.5) 2 2(0.5) 3 ) + 0(...) + 4((0.5) 2 + (0.5) 3 ) = 3
y(0.5) = 1(1 3(0.5) 2 + 2(0.5) 3 ) + 5(3(0.5) 2 2(0.5) 3 ) + 4(0.5 2(0.5)... = 3.5
)P (0.5) = (3,3.5
33

: n ) (
n .
n .
.
) ( :
P1 spline P1 spline

. P1 P0 P1 P2
P0 P2 P1 :

spline:
u1 u 2 spline :
)P (u1 = 1) = P (u 2 = 0
P (u ) = (2u 3 3u 2 + 1) P0 + ...
P (u ) = (6u 2 6u ) P0 + (6u 2 + 6u ) P1 + (3u 2 4u + 1) P0 + (3u 2 2u ) P1
P (u ) = (12u 6) P0 + (12u + 6) P1 + (6u 4) P0 + (6u 2) P1
P (u = 1) = 6 P0 6 P1 + 2 P0 + 4 P1

34

spline

P (u = 0) = 6 P1 + 6 P2 4 P1 2 P2

spline

6 P0 6 P1 + 2 P0 + 4 P1 = 6 P1 + 6 P2 4 P1 2 P1
)P1 = 1 4 (3P0 + P0 3P2 P2

.
:
Default .
. Spline

.

Bezier Spline C.S .


.
. .
) . -
( C.S. Interactive -
. .
approximation . .
.
.
Bezier B.Spline .

35

: Bezier
Bezier Curves:

Bezier : Cubic Spline


(1 C.S .
) ( ) ( .
(2 n n+1
. .
(3 3 .
n+1 .
.
.

36


.
n :
n

) P (u ) = Pi Bi ,n (u

0 u 1

)(I

i =0

P (u ) ) ( Pi Bi ,n .
Bernstain.
Bi ,n (u ) = c(u, i )u i (1 u ) ni

)(II
!n
) c(i, n )(III
!) i!(n i

= ) C (n, i

12 3 c(u,0) = c(u, u ) = 1 3 :
P (u ) = P0 (1 u ) n + P1C (u,1)u (1 u ) n1 + P2 c(n,2)u 2 (1 u ) n2 + ... + Pn1c(n, n 1)u n1 (1 u ) + Pn u n 0 u 1

-4 u ) (1-u .
. .

1 u = v 4 ) c(n, i ) = c(n, n i
. ) Bi ,n (u ) Bni ,n (u .
-5 Bi ,n (u ) = c(n, i)u i (1 u ) ni
d ( Bi ,n ) / du = 0 u = i n .
37

i
n

i
n

Bi ,n (u ) max = c( n i )( ) i (1 ) ni
i

n

= u.

3 P1 P0 P2 P3 u = 0 ,1 3 , 2 3 ,1
.
-6
.
) (a P0 . ) (b P2 -
P2 .

-7 P0 Pn
.
-8 u Bi ,n 1 .
[(1 + u ) u ]n = 1

Quadratic Bezier Curve:


Quadratic
Degree 2, Order 3
F(0) = P0, F(1) = P2
F(u) = (1-u)2 P0 + 2u(1-u) P1 + u2 P2

38

Cubic Bezier Curve:


Cubic
Degree 3, Order 4
F(0) = P0, F(1) = P3
F(u) = (1-u)3 P0 +3u(1-u)2 P1+3u2(1-u) P2 + u3 P3

39

: 4 .
u = 0, 1 4 , 1 2 , 3 4 ,1.
P1 = [2 3 0]T P2 = [3 3 o]T P3 = [3 2 0]T

P0 = [2 2 0]T
n

P (u ) = Pi Bi ,n (u ) = P0 B0 ,3 + P1 B1,3 + P2 B2,3 + P3 B3,3

o u 1

i =0

!n
!) i!(n i

n=3

= ) c ( n, i

Bi ,n (u ) = c(n, i )u i (1 u ) n i

3! 0
3! 1
3! 2
!3
u (1 u ) 3 + P1
u (1 u ) 2 + P2
u (1 u ) + P3 u 3
!0!3
!1! 2
!2! 1
!3
0 u 1

P (u ) = P0

P (u ) = P0 (1 u ) 3 + 3P1u (1 u ) 2 + 3P2 (1 u ) + P3u 3


P (0) = P0 [2 2 o]T
P ( 1 ) = [2.156 2.56 o]T
4
P (3 4) = [2.84 2.56 o]T
P (1) = [3 2 0]T

4 :
.

40

Bezier :
(1 . P0 Pn . u = 0
u = 1 4 .
(2 . 1 2 r
:

:
41

r
!n
(1) r i c(r , i ) Pi

(n r )! i =0

= )P r (0

r
!n
(1) r i c(r , i ) Pni

(n r )! i =0

= )P r (1

) P (0) = n( P1 P0
) P (1) = n( Pn Pn 1

) ( P1 P0 ) ( Pn Pn1 .
P0 P1 P2 r
r ) ( .
: ) ( -
) ( Convex hull property .
.
:
. .

:
:

-1 .
.
.
-2 ) (max
. clipping .
42


.
) .
(.

: .
... .
-4 .
.
D-Base
.
D.B .
: .
-1 .
-2 ) (local global )
(
.
.

43

:NURBS
CAD/CAM
.
NURBS .

: C.S. 0 u 1

P (u ) = C3u 3 + C2 u 2 + C1u + C0 .

C0 C1 C2 C1 .
.
C.S. ) (

44

P (u ) = P0 B0,3 + P1 B1,3 + P2 B2,3 + P3 B3,3


P (u ) = P0 (1 u ) 3 + 3P1u (1 u ) 2 + 3P2u 2 (1 u ) + P3u 3
P (u ) = P0 (1 3u + 3u 2 u 3 ) + P1 (3u 6u 2 + 3u 3 ) + P2 (3u 2 3u 3 ) + P3u 3
P (u ) = u 3 ( P0 + 3P1 3P2 + P3 ) + u 2 (3P0 6 P1 + 3P2 ) + u (3P0 + 3P1 ) + P0

) C0 C3 f3, f3 , f0, f0 . (
P0 = C0
P1 = 1 3 C1 + C0

P0 + 3P1 3P2 + P3 = C3

3P0 6 P1 + 3P2 = C 2

) P2 = 1 3 (C 2 + 2C1 + 3C0

3P0 + 3P1 = C1

P3 = C3 + C 2 + C1 + C0

P0 = C0

P0 P3 u = 0 u = 1 .
x x y . z
.
.
a b ) ( P4 , P3 , P2 , P1 ) ( P8 , P7 , P6 , P5 , P4 .
C o .
. .
= m

45

:
) P(0) = n ( P1 P0
)P(1) = n( Pn Pn 1

3 4.
) P(0) = 4( P5 P4 ) P(1) = 3( P4 P3
.

) 3( P4 P3 ) = 4( P5 P4
4
) P4 P3 = ( P5 P4
3

C 2 P(0) = P(1) . ) P(0 ) P(1


.
.
P r ( 0) = P r (1) . .
. C
C r r .
n
.
:
:
P (u ) = P0 (1 u ) 3 + 3Pu (1 u ) 2 + 3Pu 2 (1 u ) + P3u 3

x100u T 100 z100 y 100 . .


. u = 0.3
46

0.3
. u = 0.3 u = 0.3

.
OB = OA+ AB
AB = OB OA
AB = B A
C = A+ AC
C = A+ U AB
U AB + (1 u ) AB
U AB/ + AB U AB/
)C = A+ U ( B A
U

1-U

A
B

C
)C = A+ U ( B A

4:

47

) A = P0 + u ( P1 P0
) B = P1 + u ( P2 P1
) C = P2 + u ( P3 P2
)D = A+ u ( B A
)E = B + u (C B
)F = D + u ( E D
)F = D + u ( E D
}])F = A+ u ( B A) + u{[( B + u )(C B)] [ A+ u ( B A

F = A+ u ( B A) + ...
F = P0 (1 u ) 3 + 3P1u (1 u ) 2 + 3P2 u 2 (1 u ) + P3u 3

. .

)C = A+ u ( B A
C = A(1 u ) + uB
C = (1 u ) A+ uB

:
.

:
.

C (u ) = Bn ,i (u ) Pi
i =0

48

P0 , P1 ,...., PK ,...., Pn
P0 , P1 ,...., PK + V,...., Pn
n

(u ) Pi

n ,i

i = k +1

K 1

D(u ) = Bn,i (u ) Pi + Bn ,K (u )( PK + V ) +
i =0

...

i = k +1

K 1

D(u ) = Bn ,i (u ) Pi + Bn , K (u ) PK + Bn ,k (u )V +
i =0

) 1 + 2 + 3 = C (u
n

D(u ) = Bn,i (u ) Pi + Bn ,k (u )V
i =0

D(u ) = C (u ) + Bn ,k (u )V

Bn ,k (u )V.
u Bn,k (u )V .
u ) C (u ) D(u .
D(u ) = C (u ) +Bu ,k (u )V

V D(u) ) C(u .
) Bu ,k (V . )( P3
)( :
!n
U k (1 u ) ( n k ) V
!) n!(n k

= Bn ,k (u )V

) C(0.5 ) D(0.5 . ) C(0.5 ) D(0.5 .


!8
(0.5) 3 (1 0.5) 83V = 0.22V
!)3!(8 3
) Bn ,k (u ) = B8,3 (u

= B8.3 (0.5)V

B8,3 (0.5) = 0.22V

u=0.5 %22 ) v ( P3 V
.
49

) Bn ,k (u 0 1 0 1 . ) C (o ) C (1
. ) (Global .

!n
ui (1 u ) n i
!)r !(n 1

= ) C (u ) = Bn ,i (u ) Pi , Bn ,i (u
i =0

) C (u ) Bn ,i (u .
d
}) Bn,i (u ) = Bn ,i (u ) = n{Bn1,i 1 (u ) Bn1,i (u
du
n 1
d
} C (u ) = C (u ) = Bn 1,i (u ){n( Pi +1 Pi
du
i =0

:
) o = n( P1 P0 ), 1 = n( P2 P1 ) , n 1 = n( Pn Pn1

:
n 1

C (u ) = Bn1 , i (u ) i

i =0

: ) C(u n-1 n
.
) n( P1 P0 ) , n( P2 P1 ) , n( P3 P2 ) ... n( Pn Pn 1

) (Hodo Graph .
Pi +1 Pi Pi Pi +1 n .
.

50

:
n
n
P
B
(
u
)
=
Pi u i (1 u ) ni

i i ,n
i =1
i =0
i
n

n+1 :
n
n
n + 1 i
n +1i

=
P
u
(
1
u
)
Pi u i (1 u ) ni

i =0
i =0
i
i
n +1

) u + (1 u .

n
= Pi u i (1 u ) n+1i + u i +1 (1 u ) ni
i =0
i
n

Rearrange u i (1 u ) n+1i .
n + 1
n
n
= Pi + Pi 1

Pi
i
i
i 1

:
i
i

Pi =
Pi 1 + 1
Pi
n +1
n +1
P0 P3 3
P0 P4 4

5 .
.
local global
local.

51

: Gaussian
.

B(t ) = 1 6(2 + t ) 3

2 t 1
1 t 0

) B(t ) = 1 6 (4 6t 3t

0 t 1

) B(t ) = 1 6 (4 6t + 3t

1p t 2
other wise

) B(t ) = 1 6 (2 t
B(t ) = 0

2
2

:B-spline
.
. B-spline
:
3 .
B-spline.
) (local .
. .
) (qpproximation
interpolation .

52

-
.
B.S .
4 3 . B.S
1 2 3.
B.S n+1 Pi :
n

) P (u ) = Pi , Ni , k(U
i =0

) Ni ,k (U B-S . .

Bezier :B-S
n

]) [ P (U ) = Pi Bi ,n (u B-S .
i =0

K n+1.
K B-S
) (K-1.
U U=1 U 1 .

: B-Spline
B-Spline :
(U ) = 1

i ,k

N
i =0

Ni ,k (U ) 0

] U [U i ,U i + k +1
53

Ni ,k (u ) = 0

B-spline ) (recursive ) :
(
) Pi

0
0

) Ni +1, K 1 (U
t i + K t i +1

) + (t i + k U

) Ni , K 1 (U

t i + k 1 t i

i =0

i =0

) P (U ) = Ni ,k (U )Pi = ((U t i

1 if t i U t i +1
{ = ) Ni ,1 (U
0
other wise

.
ti ) ( .
) (nondecreasing .
ti B-S ) ( ) (nonperiodic
)(.

.
5

0t nK+2

0
if
j<k

t j = j K + 1 if k j n
n K + 2 if
j < n

0 j n + K

: K-1 ) (n+1
) (n+K+1 .
54

t . t = 1 -
. t .
K ) .(K-1 K .
5 n k + 2 > 0 k < n + 2 : n + 1 k 1 < n + 1 k 1
n + 1 = 4 4 12 3 .

B-spline k 6 :
B-spline k 6
.
k ) ( K 1 5.

= ) (k 1 1) n = 5 , k = 1
0u nk+20u 6

u 6.

j<k

k j n
j > n

t j = j K +1
n K + 2

0 j n+K 0 j 6
0 <1 1=1 1< 2
t 0 = 0 , t1 = 1, t 2 = 2 , t 3 = 3 , t 4 = 4 , t 5 = 5 , t 6 = 6

) Knot vector =[0,1,2,3,4,5,6] Uniform knot spacing(

t j U t j +1

other wise
n
i = 0
5

1 if
Ni ,k (U ) =
0

55

N0,1 (U ) =

1 if
0

0 U 1
other wise

N1,1 (U ) =

1 if
0

1U 2
other wise

N2,1 (U ) =

1 if
0

2 U 3
other wise

N3,1 (U ) =

1 if
0

3U 4
other wise

N4,1 (U ) =

1 if
0

4 U 5
other wise

N5,1 (U ) =

1 if
0

5 U 6
other wise
n=5 k=1

P (U ) = N0 ,1 (U ) P0 + N1,1 (U ) P1 + N2,1 (U ) P2 N3,1 (U ) P3 + .... N5,1 (U ) P5


n

P (U ) = Ni ,k (U ) Pi P (U ) P0 for 0 U 1
i =0

P (U ) = P1 for 1 U < 2

P (U ) = P3

for 3 U 4

P (U ) = P2 for 2 U < 3

P (U ) = P4

for 4 U < 4

P (U ) = P5 for 5 U < 6

. n=5 k=1
(k=1) . 0

56

2)

n=5

k=2
j<k

k j n
j > n

t j = j K +1
n K + 2

0 j n+ K
o j7

0 U 5

t0 = 0

t1 = 0

t2 = 1

t3 = 2

t4 = 3

t5 = 4

t6 = 5

t7 = 5

. nonuniform
Knot vector = [0,0,1,2,3,4,5,5]
Non uniform knot spacing

: Ni ,1 (u ) Ni , 2 (u )
N0,1 (U )

=1
=0

if U = o
other wise

N1,1 (U )

=1
=0

if 0 U 1
other wise

N2,1 (U )

=0
=0

if 1 U 2
other wise

N3,1 (U )

=1
=0

if 2 U 3
other wise

N4,1 (U )

=1
=0

if 3 U 4
other wise

N5,1 (U )

=1
=0

if 4 U 5
other wise

n
(U t i ) Ni ,k 1 (U ) (t i + K U ) Ni +1,k 1 (U )
P (U ) = Ni ,k (U ) Pi =
+
Pi
t i + K 1 t i
t i + k t i +1
i =0

N0, 2 (U ) =

(U 0) N0,1 (U )
t1 t 0

(t 2 U ) N1,1 (U )
t 2 t1

= (1 U ) N1,1 (U )

57

) = UN1,1 (U ) + (2 U ) N2,1 (U

) (t3 U ) N2 ,1 (U
t3 t 2

) (U 0) N1,1 (U
t 2 t1

= ) N1, 2 (U

) N2, 2 (U ) = (U 1) N2,1 (U ) + (3 U ) N3,1 (U


) N3, 2 (U ) = (U 2) N2,1 (U ) + (5 U ) N4,1 (U
) N4, 2 (U ) = (4 3) N4,1 (U ) + (5 U ) N5,1 (U
) N5, 2 (U ) = (U 4) N5,1 (U

:
P (U ) = N0, 2 (U ) P0 + N1, 2 (U ) P1 + N2 , 2 (U ) P2 + N3, 2 (U ) P3 + N4, 2 (U ) P4 + N5, 2 (U ) P5
0 U 1 P (U ) = (1 U ) N1,1 (u ) P0 + [uN1,1 (U ) + (2 U ) N2 ,1 (U )]P1
P (U ) = (1 U ) P0 + UP1

0 < U < 1 .
1 U < 2 P (u ) = (2 u ) P1 + (u 1) P2

2 U < 3 P (u ) = (3 u ) P3 + (u 2) P3

3 U < 4 P (u ) = (4 u ) P3 + (u 3) P4

4 U < 5 P (u ) = (5 u ) P4 + (u 4) P5

0 U 1 P0 P1 .
1 U 2 P1 P2 .
.........
.

J 8 Tj = [0,0,0,1,2,3,4,4
58

0 K = 3 3

3) N = 5

j<k

k j n
j > n

t j = j K +1
n K + 2

. Ni , 2 (U ) Ni ,1 (U )
N0,1 (U ) = 1
=0

if U = o
other wise

N1,1 (U ) = 1
=0

for U = o
other wise

N2,1 (U ) = 1
=0

for 0 U < 1
other wise

N3,1 (U ) = 1
=0

1 U < 2
other wise

N4,1 (U ) = 1
=0

2 U < 3
other wise

N5,1 (U ) = 1
=0

3 U < 4
other wise

. Ni , 2 N 0,3
N0, 2 (U ) =
N1, 2 (U ) =
N2, 2 (U ) =

(U 0) N0,1 (U )
t1 t 0
(U 0) N1,1 (U )
t 0 t1

+
+

(0 U ) N1,1 (U )
t 2 t1
(1 U ) N2 ,1 (U )
t 3 t1

=0
= (1 U ) N2,1 (U )

(U 0) N2 ,1 (U ) (2 U ) N3,1 (U )
+
= UN2,1 (U ) + (2 U ) N3,1 (U )
1 0
1

N3, 2 (U ) = (U 1) N3,1 (U + (3 U ) N4,1 (U )


N4, 2 (U ) = (U 3) N5,1 (U )
N0,3 (U ) =

UN0 , 2 (U )
t 2 t0

(1 U )
N2 ,1 (U ) = (1 U ) 2 N2 ,1 (u )
t 3 t1

0
59

0
0
N5,3 (U ) = ...

P (U ) = P0 N0,3 (U ) + P1 N1,3 (U ) + P2 N2,3 (U ) + P3 N3,3 (U ) + P4 N4,3 (U ) + P5 N5,3 (U )


for 0 U < 1

P (U ) = P0 (1 U ) 2 N2 ,1 (U ) + P1[1 2U (4 3U ) N2,1 (U ) + 1 2 (2 U ) 2 N3,1 (U )] +

+ P2 [1 2 U 2 N 2 ,1 (U ) + 1 2 ...N 3,1 (U ) + ....N 4,1 (U )]

for 0 U < 1

P (U ) = (1 U ) 2 P0 + 1 2U (4 3U ) P1 + 1 2U 2 P2

1U < 2

P (U ) = 1 2 (2 U ) 2 P1 + 1 2 (2U 2 + 6U 3) P2 + 1 2 (U 1) 2 P3

2 U < 3

P (U ) = 1 2 (3 U ) 2 P2 + 1 2 (2U 2 + 10U 11) P3 + 1 2 (U 2) 2 P4

3U < 4

P (U ) = 1 2 (4 U ) 2 P3 + 1 2

. P1 . 4
60

3 .
.

B-spline k k

.
k . P1 P3
.
local global


. .
. B-

spline 3 .

.
.
k = 1 .
61

k = 2 .
k = 3 2 )( .
k ) (n+1 B-spline 0 U 1
.

: B-spline -
) (w .
w > 1 . w < 1 W=1 . w=0 .
B-spline ) (... .
.
...
. B-spline.

62

Non-Uniform Rational B-Splines(NURBS):


B-spline curves are polynomial curves. While they are flexible and have
many nice properties for curve design, they are not able to represent
the simplest curve: the circle.

NURBS Definition
Given n+1 control points, m+1 knots, the NURBS curve of degree p defined by these parameters
is the following:

The number of weights and the number of control points must agree.
In general, weight is positive; but negative weights have interesting applications.
If a weight, say , becomes zero, consequently, the related control point has no impact on the
computation of P(u).
63

Moreover, zero weights also have a very useful interpretations called infinite control points.

We can write the NURBS curve definition as:

In which the basis is defined as:

:
: 3

64

Principal tangents and surface normal

4:

0 U 1

P (U ) = CiU i 3
i =0

Parametric description of a surface

16:

U
V

P (U , V ) = CijU iV j
i =0 j =0

) . 1 (
n :
n

) P (U ) = Pi Bi ,n (U
i =0

n m :

65

P (U , V ) = Pij Bi ,n (U )B j ,m (V )
i =0 j =0

Bezier Surfaces: Important Properties


Several important properties of Bzier surfaces are listed here:
P(u,v) passes through the control points at the four corners of the control net.
Basis functions are nonnegative for all m, n, i, j and u and v in the range of 0 and 1.
The sum of all basis functions is 1 for all u and v in the range of 0 and 1.

Bezier surface lies in the convex hull defined by its control net.

66

Characteristic polygon and surface of a bicubic Bezier surface

67

68

B-spline Surfaces
Definition: Given the following information:
a set of m+1 rows and n+1 control points;
a knot vector U of h + 1 knots in the u-direction;
a knot vector V of k + 1 knots in the v-direction;
the degree p in the u-direction;
69

the degree q in the v-direction;

B-spline Surfaces: Important Properties


Important properties of B-spline surfaces are listed here:
Basis functions are nonnegative for all p, q, i, j and u and v in the range of 0
and 1.

The sum of all basis functions is 1 for all u and v in the range of 0 and 1.
If m = p, n = q, and U = { 0, 0, ..., 0, 1, 1, ...., 1 }, then a B-spline surface
becomes a Bzier surface.
Local Modification Scheme: If any control point is moved to a new location,
only the neighboring area on the surface of the moved control point changes
shape and elsewhere is unchanged.

70

71


interoperate opproximate.
72

:
...
. ) transformation( .

:
) (x,y ) (x1,y1 .
x1 = x + x

y1 = y + y

:
x
T=
y

x1 x
y = y + T
1

:
:
x2
y2
73

x2
x1
=
S
y
y2
1

x1
y
1

x 0
2 0
S=
S=

0 y
0 2
2 0 1 2 2 4
L.S =

=

0 2 1 3 2 6

x y .
1 2
:
1 3

x y .
3 0 1 2
3 6
LS
=

4 19
0 4 1 3

. .
: . )0 (0
.
.

x y
0 0 .

: .
(1

(2

(3
8 9 8 8 0 1
2 4 + 2 2 = 0 2

2 0 0 1 0 2 8 8 8 10
0 2 0 2 = 0 4 + 2 2 = 2 6

74

x y .

:Rotation
P ) (x,y xy )0 z(0
P .

) x1 = r cos ( +
) y1 = r sin ( +

x1 = r cos sin r sin sin


y1 = r sin sin + r cos sin

x y :
x
y
= y = r sin cos = , sin
r
r
x1 = x cos y sin
y1 = x sin + y sin

x = r cos

x
y
x1 = r cos r sin
r

y
x
y1 = r sin + r sin
r
r

.
x
y

sin
cos

x1 cos
y = sin
1

: ) P (4,2 90o P1 :
x1 0 1 4 2
y = 1 0 2 = 4

1

: P 180o .
75

4 4
2 = 2

x1 1 0
y = 0 1

sin
sin

cos
R2 =
sin

T
.
.
.
.

:
n ) (n+1 .
P ) (x,y ) P1 = ( x1 , y1 , h ) ( x, y, z
) ( x1 , y1 , z1 , h.
h 1 .
x

T = .
y

x1 1 0 x x
y = 0 1 y y = x x
1
y y

i 0 0 1 1

x1 x2
y y
1 2
1 1

x1x x2 x
y1x y2 y .
1
1
x2 x1x x2 x
y2 = y1y y2 y
1 1
1
76

x1 x2 x 0 0 x1
y y = 0 y 0 y
1 2
1
1 1 0 0 1 1

:
x1 cos sin
y = sin cos
1
1 0
0

0
0
1

x x cos y sin
y = x sin + y cos

1
1

:
x 1
y 0
=
z 0

1 0

0
1
0
0

0 x x
0 y y
1 z z

0 1 1

0
x 0
0 y 0
S=
0
0 z

0
0
0

0
0
0

.
x1

y1
z1

x2
x1 x2

y y
y2
= [T1 ] [S ] [T2 ] 1 2
z1 z2
z2

1
1 1

z y x
sin sin
sin sin
Rz =
0
0

0
0

0
0
1
0

0
0
0

1
0
Rx =
0

0
cos
sin
0

0
sin
cos
0

0
0
0

sin
0
Ry =
sin

0 sin
0
1
0
0
0
0 sin

0
1
0

( ) :
x
x
y

= [Rz ] Ry [Rx ] y
z
z


1
1

[ ]

:
P = [Tn ][Tn1 ][Tn2 ]....[T1 ]P
77


Computer Aided Manufacturing (CAM)

78

interpolation :CNC
CNC ) .
. (
: G01

Continuous-path control using linear interpolation

79

n ) (
:

n m G01,m,n .
:

G00 G01 5 G02 .


.

.
80

: G02 n .
) ( N
CNC . .
:nurbs Base nurbs Base .
P3 , P2 , P1 , P0 -
.

.
50 50 50n G01.
.
.

:
4:
16:

0 U 1

P (U ) = CiU i 3
i =0

U
V

P (U , V ) = CijU iV j
i =0 j =0

) . 1 (
n :
n

) P (U ) = Pi Bi ,n (U
i =0

n m :
81

) P (U , V ) = Pij Bi ,n (U )B j ,m (V
i =0 j =0


interoperate opproximate .
.
: ... .

.
: spiral

.

.

:
CAD .
CAM . G Code .
(1 . (2
: Perform .
: .
(1 ) . (...
. .
82

.
. .
. .
. n
) . (B-spline
.
.

G01 interpolate CNC.


.
step over ) . S.O (
.

G01 :
. .
83

d < Tol d d < Tol.

P1 U = 0.1 U = 0 U = 0.1 U 10 .
PP1 .
. U = 0.1 P1
.

Overestimate underestimete

84

) Gouging ( : .
-1 : :

Gouging .

-2 .
.

.
.

-3 .
85

-4 CNC
Gouging . .

CNC 5 .
: Uneven surface

interpolate CNC .
:
-1 G01
-2 G02
-3 G02
-4 G01

86

-5 NURBS - G-codes

D
10
e

.
.
.
) . z constant
(

87

: z-constant
) ( xy-pa

Base interpolate

) ( gouging
(
interpolate G02 G02 z constant CNC .
z constant
xy-pa

88

POCKETING

Contourin
Stair

interpolate.

batch p.
89


.
Batch pr. .
. .
.
) CNC (
CNC Batch .
) ( . .
CNC .
: :
NC .
) (
.
.
.
) . CNC
.
.
) . (...
%100 ) (...

CNC ...
90

CNC .
.
NC
.
CNC
) . CNC .

.

) (Turret )
(
.
.

CMM
.
.
off line .

CNC . ...
. . .
.
91

) (
x y .
.

.

C C B .
. P.T.P.
.


. A.C.
.
.

.1 feed .
.2
.3 feed .
.4 feeds .
.
A.C

92

.1 spinder .
.2 .
.3
.4 feed
.5 feed
)( .
.
cap .
.
: . Solid model
) -
(.
solid model .
G Plc .
) (
.

93

You might also like