Books in black and white
 Books Biology Business Chemistry Computers Culture Economics Fiction Games Guide History Management Mathematical Medicine Mental Fitnes Physics Psychology Scince Sport Technics

# Curves and surfaces in computer aided geometric design - Yamaguchi F.

Yamaguchi F. Curves and surfaces in computer aided geometric design - Tokyo, 1988. - 390 p. Previous << 1 .. 54 55 56 57 58 59 < 60 > 61 62 63 64 65 66 .. 90 >> Next Qi =
2n . 2n
R cos-----i R sin-------i
m m
2n 2n
3 cos-----i 3 sin---------i
m m
2 + cos-
2n
m
2n
2 +cos-----
m
(i = 0, 1, m— 1).
(6.23)
Next, let us find the deviation from a true circle. In Fig. 6.11, the midpoint P\i of the curve segment generated by the 4 points Qm-U Qo> Qi and Q2 is found by setting t = \ in formula (6.14):
6.1 Uniform Cubic Á-Spline Curves
245
so that the deviation E(%) from a true circle is:
71
1 — cos — m
x 100.
(6.25)
2n
2 2 +cos
m
From formula (6.25) we find that a square gives a deviation of 2.8% from a true circle; an equilateral 12-sided polygon gives a deviation of 0.02%. An example of generation of a semicircle is shown in Fig. 6.12.
Let us consider the problem of producing a cusp using uniform cubic B-spline curves. In Fig. 6.13, the sequence of vertices Q0, Qu Q2, Q3, (?4 determines a curve P1P2P3. Next, if two vertices are made to coincide so that the vertex sequence becomes Q0, Qu Q2, Q2, Q3, ?>4, the curve becomes PlPAP5P3, increasing the curvature in the vicinity of Q2. If three vertices are overlapped at point Q2, the vertex sequence that defines the curve becomes Q0, Q\> Qi> Qi, Qi, áç> 04- The curve becomes PXP^Q2P5P3, and the slope becomes discontinuous at point Q2, making that point a cusp. In this case there are straight line segments, P4Q2 and Q2P5, on both sides of the cusp. By suitably controlling the arrangement of the 3 points centered on Q2, a sharp cusp can be produced.
Fig. 6.12. Example of generation of a circular arc (half circle) as a Á-spline curve (M = 4)
Q
Fig. 6.13. Formation of a cusp by Á-spline curves (M = 4)
246 6. The Â-Spline Approximation
6.1.3 Determination of a Point on a Curve by Finite Difference Operations27’
The finite difference matrix needed to calculate a point on a uniform cubic B-spline curve is found as follows (refer to Sect. 1.2.4).
In formula (6.14), abbreviating NlA(t) = Nt(t) we obtain:
Pl(t) = N0(t)Qi_1+N1(t)Ql + N2(t)Ql + l+N3(t)Ql+2. (6.26)
The 1-st, 2-nd and 3-rd finite differences of Pt(t) at t = 0 are ^(O), Ŕ2Đ{(0) and ^/^(Î), and the finite differences of Nt(t) are ANt(0), A2Nt(0) and A3Nt(0). Then we have:
/,,(î)=ëă0(î)ĺ1_1+ëă1(î)ĺ1+ëă2(î)ĺ1+1+ŔĂç(î)ĺ1+2
APl(0) = ANo(0)Ql_1+AN,(0)Ql + AN2(0)Ql + l+AN3(0)Ql + 2 A2Pl(0) = A2No(0)Ql^+A2Nl(0)Ql + A2N2(0)Ql + l + A2N3(0)Qi+2 A3Pl(0) = A3No(0)Ql_l+A3Nl(0)Ql + A3N2(0)Ql + l+A3N3(0)Ql + 2
(6.27)
where:
N0( 0) = |, Nt( 0) = y, N2( 0)=|, N3(0) = 0, zlJVo(0) = AN^^-S^-S2,
Î II I
AN2(0)=-jS3+^S2+jS, AN3(0) = j5\
A 2N0 (0) = — <53 + <52, zl 2Ar1 (0) = 3<53 — 2<52
zl2jV2(0)= —3 <5 ç —|— <5 2 ? A2N3(0) = 53,
A3No(0)=-S3, A3N1(0) = 3S3, A3N2(0) = — 3<53, A3No(0) = 53
Then we can find the finite difference matrix to be:
' Ë(0) '
Ň^Ë(0)
î
~^A2p>( °)
-óËÚđË °)
N0( 0)
N,( 0)
N2( 0)
iV3(0)
1 s ANo(0) jzliVi(O) 1 AN2( 0) 1 ~d AN3( 0)
1 A 2N0 (0) 1 A2N2( 0) 1 A2N3( 0)
1 ó A3No(0) 1 A3N2( 0) 1 A3N3( 0)
6.1 Uniform Cubic Â-Spline Curves
247
2
ç"
1 ,2 1 * 1 1 *2 *
— 8 -\—8--------------— 8—8
6 2 2 2
-<5+1
-1
38 — 2 3
--52+-5+„ 2 2 2
— 3 <5 +1
-3
1 1
Qt-1 Qi
Qi + 1 Qi + 2
(6.28)
Using the matrix in Eq. (6.28), a point on the curve can be found at high-speed without multiplications.
In Eq. (6.28), if a certain Qi+j(j= 1,0,1,2) varies, the finite difference matrix for Qi+j has to be recalculated, but it is wasteful to repeat the full calculation of (6.28). It is more efficient to calculate the change due to only the change AQi+j
of Qi+j-
" W) - ' PM " ' NJ+ !(0) ‘
î) 0)
]^Ä2Đą + Jh2n,+1(0)
^Í3/»((0) Jr^(°) Jh3jW°)
(6.29)
(j=-1,0,1, 2)
6.1.4 Inverse Transformation of a Curve27*
Consider the inverse transformation problem, of finding the curve defining vectors Qj (j = 0, 1, ..., n) given the knot point vectors Pi{i= 1, 2, ..., n— 1) of a
248
6. The Á-Spline Approximation
uniform cubic 5-spline curve (Fig. 6.1). In the case of a closed curve, the problem is one of finding Qj(j= —1,0, n,n+1) given Pt(i = 0, 1, ..., n) (Fig. 6.14).
For both open and closed curves, the following system of simultaneous equation holds:
1 2 1 (i = 1,2,..., n — 1 (open curve) \
7ft-,+Ta+7flt,^ • (630)
Since there are two fewer equations than unknowns, the following conditions are applied for open curves and closed curves, respectively:  