J. Appl. Math. & Computing Vol. x(200y), No. z, pp.
MODIFYING THE SHAPE OF FB-SPLINE CURVES ´ HOFFMANN∗ AND IMRE JUHASZ ´ MIKLOS
Abstract. FB-spline curves are the unification of recently developed trigonometric CB-spline and hyperbolic HB-spline curves, including the classical B-spline curves. These generalized curves overcome some restrictions of Bspline curves and allow to design some important curves like helix, cycloids or catenary. Their properties, however, have been studied only theoretically. In this paper practical shape modification algorithms of FB-spline curves are discussed, including the geometrical effects of the alteration of shape parameters, which are essential from the users’ point of view. AMS Mathematics Subject Classification : 68U05 Key words and phrases : FB-spline curve, C-curves, H-curves, shape modification
1. Introduction Recently, new types of spline curves have been appeared in the literature and in applications, due to the limitations of B-spline and NURBS curves. Instead of polynomial basis, that was a reasonable choice in the epoch of computers with modest computational capabilities, the basis of new splines incorporate trigonometric functions as well. The theoretical fundamentals for these kind of curves have been laid in [9]. C-B´ezier and uniform CB-spline curves are defined by means of the basis {sin t, cos t, t, 1}, that was generalized to {sin t, cos t, tk−3 , tk−4 , ..., t, 1} (cf. [1], [13], [14], [15]). Wang et al. introduced NUAT B-spline curves ([11]) that are the non-uniform generalizations of CBspline curves. The other basic type is the HB-spline curve, the basis of which is {sinh t, cosh t, t, 1}, and {sinh t, cosh t, tk−3 , tk−4 , ..., t, 1} in higher order [5], [9]. Li and Wang developed its non-uniform generalization [4]. The reason for the introduction of these new spline curves and surfaces is that they are capable of the exact description of such curves and surfaces that are of great importance in applications. Such curves and surfaces are circle and circular cylinder [13], ellipse [15], surfaces of revolution [8], cycloid [7], helix [9], Received , . Revised , . ∗ Corresponding author. c 200x Korean Society for Computational & Applied Mathematics and Korean SIGCAM . ° 1
2
Mikl´ os Hoffmann and Imre Juh´ asz
hyperbola and catenary [5]. Although, some of these object can be described by the traditional NURBS technique, the evaluation of CB-spline and HB-spline are more stable ([6], [7]). These splines of uniform parametrization have been unified in two similar papers by Zhang and Krause [16], and Zhang et al. [17] with the name FBspline. FB-spline curves that include uniform HB-spline, CB-spline curves and the uniform B-spline curve itself inherit most advantageous properties of B-spline curves. Properties of these curves have been clarified mainly from theoretical point of view ([3], [6], [7], [8], [10], [12]). However, in order to be applied, it is essential to develop tools that can be used for constrained shape modification. Such a research has been done only for C-B´ezier curves [2]. The objective of this paper is to examine the effect of the modification of control points and shape parameters on the shape of FB-spline curves, and to provide shape modification methods based on them. These methods are indispensable for the application of FB-spline curves in design. In Section 2 we provide basic definitions, in Section 3 we have collected control point based methods, in Section 4 we study the influence of shape parameters, while in Section 5 we discuss endpoint interpolation.
2. Definitions
Throughout the paper, we use the definition of FB-spline curves specified in [17].
Definition 1. Given control points b0 , b1 , . . . , bn+1 , (n ≥ 2) and parameters C1 , C2 , . . . , Cn , (Ci ∈ [0, ∞)). The curve that consists of arcs pi (τ ) = Ni,0 (τ ) bi−1 + Ni,1 (τ ) bi + Ni,2 (τ ) bi+1 + Ni,3 (τ ) bi+2 τ ∈ [0, 1] , (i = 1, 2, . . . , n − 1) is called FB-spline curve, where, using the abbreviations spr(x)
=
sph(x)
=
x−sin(x) , x3 sinh(x)−x , x3
1−cos(x) , x2 cosh(x)−1 = x2
cpr(x) = cph(x)
(1)
Modifying the shape of FB-spline curves
the basis functions are Ni,0 (τ ) =
spr(2 arccos(Ci )(1−τ )) 2cpr(2 arccos(Ci )) sph(2arccosh(Ci )(1−τ )) 2cph(2arccosh(Ci ))
Ni,3 (τ ) =
(1 − τ )
3
3
(1 − τ )
3
if
Ci ≤ 1
if
Ci > 1
spr(2 arccos(Ci+1 )τ ) 3 2cpr(2 arccos(Ci+1 )) τ
if
Ci+1 ≤ 1
sph(2arccosh(Ci+1 )τ ) 3 2cph(2arccosh(Ci+1 )) τ
if
Ci+1 > 1
Ni,1 (τ ) = Ni,3 (τ ) − 2Ni,0 (τ ) + (1 − τ ) Ni,2 (τ ) = Ni,0 (τ ) − 2Ni,3 (τ ) + τ. Scalars Ci are called shape parameters. Practically if these shape parameters are all greater than 1, then we get a curve between the classical B-spline curve and its control polygon, which is identical to the CB-spline curve. If the shape parameters are all less than 1, then we get a curve ”below” the classical B-spline curve which is identical to the HB-spline curve. The definition described above allow us to get curves which somehow mix these two possibilities. The classical B-spline curve can be obtained as a limit case (all the shape parameters Ci = 1) but here we have to approximate the applied trigonometric functions. If x = 0 or x ≈ 0, i.e. Ci = 1 or Ci ≈ 1, we use expansions spr(x)
=
cpr(x)
=
sph(x)
=
cph(x)
=
1 3! 1 2! 1 3! 1 2!
x2 5! x2 − 4! x2 + 5! x2 + 4! −
x4 7! x4 + 6! x4 + 7! x4 + 6! +
− · · · + (−1)
n−1
− · · · + (−1)
n−1
x2n−2 + ··· (2n + 1)! x2n−2 + ··· (2n)!
x2n−2 + ··· (2n + 1)! x2n−2 + ··· + + ··· (2n)! + ··· +
The arc pi (τ ) can also be described in the form pi (τ ) =
Ni,0 (τ ) (bi−1 − 2bi + bi+1 ) + Ni,3 (τ ) (bi − 2bi+1 + bi+2 ) (2) + (1 − τ ) bi + τ bi+1 .
Varying one of the defining data (control point or shape parameter) of the curve, its points move along curves that we call path in the rest of the paper. 3. Control point based methods 3.1 Move a curve point to a specified location
4
Mikl´ os Hoffmann and Imre Juh´ asz
Any control point of curve (1) affects at most four consecutive arcs. When a control point of an FB-spline curve is translated, paths of curve points are straight line segments that are parallel to the translation vector. This is the property of all curves that are combinations of control points and basis functions, therefore we discuss it briefly only for the sake of completeness. If the control point bi is translated by the vector d, the shape of the arcs pj (τ ), (j = i + k, k = −2, −1, 0, 1) are modified in the form e j (τ ) = pj (τ ) + Nj,1−k (τ ) d. p If we want to move the curve point pj (τ ) with prescribed parameter value τ , (j = i + k, k = −2, −1, 0, 1) to an arbitrarily chosen point q (there is no restriction to the location of q at all) by the translation of control point bi , the translation vector is 1 d= (q − pj (τ )) . Nj,1−k (τ ) 3.2 Multiple control points We examine the effect of coinciding consecutive control points on the shape of the curve. In case of double control point we assume that bi = bi+1 . The ith arc becomes pi (τ ) = bi + Ni,0 (τ ) (bi−1 − bi ) + Ni,3 (τ ) (bi+2 − bi ) . τ = 0 implies Ni,3 (0) = 0, thus pi (0) = bi + Ni,0 (0) (bi−1 − bi ) , i.e., the beginning point of the arc is on the segment bi−1 bi which segment is the tangent at this point. τ = 1 implies Ni,0 (1) = 0 and pi (1) = bi + Ni,3 (1) (bi+2 − bi ) , therefore the line bi+2 bi touches the arc at its endpoint which point is on the segment. The (i − 1)th arc is pi−1 (τ ) = Ni−1,0 (τ ) (bi−2 − 2bi−1 + bi ) + Ni−1,3 (τ ) (bi−1 − bi ) + (1 − τ ) bi−1 + τ bi . At τ = 1 pi−1 (1) = bi + Ni−1,3 (1) (bi−1 − bi ) . (3) Utilizing that Ni,0 (0) = Ni−1,3 (1) we can see that line bi−1 bi is the tangent at the point of joint. The (i + 1)th arc is pi+1 (τ ) = Ni+1,0 (τ ) (bi+2 − bi ) + Ni+1,3 (τ ) (bi − 2bi+2 ) + bi+3
Modifying the shape of FB-spline curves
5
(1 − τ ) bi + τ bi+2 , at τ = 0 pi+1 (0) = bi + Ni+1,0 (0) (bi+2 − bi ) , moreover Ni+1,0 (0) = Ni,3 (1), i.e. at this point of joint the tangent is the control polygon side bi+2 bi (cf. Fig. 1). This property enables us to specify shape parameters Ci and Ci+1 intuitively by the direct specification of the point of contact pi (0) and pi (1), respectively.
Figure 1. FB-splines with multiplicity 1, 2 and 3 of control point b3 In case of triple control point we assume that bi = bi+1 = bi+2 (cf. Fig. 1) which implies pi (τ ) = bi + Ni,0 (τ ) (bi−1 − bi ) . This means that the ith arc is a segment with endpoint bi of the control polygon side bi−1 bi . The endpoint of the (i − 1)th arc is (3), since in the evaluation of this arc the considered control point is of multiplicity two. Therefore, arcs pi−1 (τ ) and pi (τ ) form a C 2 continuous straight line segment and curved arc. Similar results can be derived for arcs pi+1 (τ ) and pi+2 (τ ). By means of this property one can describe C 2 continuously joining straight line segments and curved arcs with an FB-spline curve.
6
Mikl´ os Hoffmann and Imre Juh´ asz
Finally, in case of quadruple control point, the assumption bi = bi+1 = bi+2 = bi+3 implies pi (τ ) = bi + Ni,0 (τ ) (bi−1 − bi ) pi+1 (τ ) = bi pi+2 (τ ) = bi + Ni+2,3 (τ ) (bi+4 − bi ) that is arc pi+1 (τ ) degenerates to a single point, arcs pi (τ ) and pi+2 (τ ) are FB-spline arcs of a triple control point. At point bi the FB-spline curve is of C 0 continuity.
4. Shape parameter based methods 4.1. Modifying a single shape parameter Parameter Ci affects only arcs pi−1 (τ ) and pi (τ ). We fix τ and Ci+1 and let Ci vary in the range [0, ∞). In expression (2) only Ni,0 (τ ) depends on Ci , thus paths are straight line segments that are parallel to the vector (bi−1 − bi ) + (bi+1 − bi ). Therefore, path of points of the affected arcs form a cylinder with base curve pi−1 (τ ) , pi (τ ) and generator direction (bi−1 − 2bi + bi+1 ) (Fig. 2).
Figure 2. Paths of an FB-spline curve obtained by the alteration of shape parameter C3 Limiting positions of the affected arcs are at values Ci = 0 and Ci → ∞. In case of the arc pi−1 (τ ) lim Ni−1,3 (τ ) = 0, Ci →∞
therefore lim Ni−1,1 (τ ) = (1 − τ ) − 2Ni−1,0 (τ ) , lim Ni−1,2 (τ ) = Ni−1,0 (τ ) + τ
Ci →∞
Ci →∞
Modifying the shape of FB-spline curves
7
from which the limiting position of the arc is i∞ pC i−1 (τ ) = Ni−1,0 (τ ) (bi−2 − 2bi−1 + bi ) + (1 − τ ) bi−1 + τ bi .
Its derivative with respect to τ is p˙ Ci ∞ (τ ) = N˙ i−1,0 (τ ) (bi−2 − 2bi−1 + bi ) + bi − bi−1 . i−1
In case of τ = 1 i∞ pC i−1 (1) = bi ,
i∞ p˙ C i−1 (1) = bi − bi−1 ,
i∞ thus the endpoint of the arc pC i−1 (τ ) is the control point bi where the tangent is the side bi−1 bi of the control polygon. By analogous considerations we obtain that the beginning point of the arc i∞ pC (τ ) is bi , where the tangent is the control polygon side bi bi+1 . i The cylinder of paths generated by the alteration of Ci , always passes through the control point bi and the tangent plane along its incident generator is spanned by control points bi−1 , bi and bi+1 .
4.2 Shape control by modifying a single shape parameter In practical CAGD systems constrained modification of a curve is essential, e.g. moving a curve point to a specified location. Based on the previous observations, by the alteration of a shape parameter we can modify an FB-spline curve in such a way that a selected point of the modified curve will pass through a specified point, but using purely shape parameter alteration, the target point must be on a well-defined line segment (see Fig.3). Steps of the procedure in an implementation are as follows: • select the point r to be moved on the arc, i.e. fix the parameter τ , (r = p(τ )); • chose the shape parameter to be modified (there are two options, in the rest we assume that shape parameter Ci has been chosen); • the system displays the path of the selected point, i.e. the straight line segment bounded by points o and o + M0 (τ ) e, where o e
= (1 − τ ) bi + τ bi+1 + Ni,3 (τ ) (bi − 2bi+1 + bi+2 ) = bi−1 − 2bi + bi+1 π (1 − τ ) − sin (π (1 − τ )) M0 (τ ) = 4π • specify the new position q of the selected point on the path. The new position can be written in the form q = o + λe, λ ∈ [0, M0 (τ )] . The Ni,0 (τ ) = λ trigonometric equation has to be solved for the unknown shape parameter Ci . There will always be a unique solution due to the geometric constraints. The solution is an HB-spline if λ ∈ [0, limCi →∞ Ni,0 (τ )), and a CBspline if λ ∈ [limCi →∞ Ni,0 (τ ) , M0 (τ )). Ci will be in the ranges (1, ∞) and
8
Mikl´ os Hoffmann and Imre Juh´ asz
Figure 3. A selected point p (τ ) of the FB-spline curve is moved to the given position q by modifying the shape parameter C3 ; the green line is the permissible positions of q
[0, 1], respectively. The high accuracy computation of the root is essential for the satisfactory geometric result. In our experience, the false position (regula falsi) root finding method is fast and accurate enough. Fig.3 illustrates shape modification subject to positional constraints by means of a single shape parameter. Certainly, such a shape modification objective can also be obtained by control point repositioning. However, the shape of resulted curves of different methods are not the same, as we can see in Fig. 4. The advantage of shape parameter alteration is twofold. The alteration affects only two arcs (not four, like in case of control point repositioning), and the modified curve is always within the convex hull of the original control points.
Figure 4. Point p (τ ) of the FB-spline curve is moved to q by the reposition of control point b3 (red) and by the shape parameter C3 (dashed blue)
Modifying the shape of FB-spline curves
9
As another practical method one can modify a curve by passing through a point, without specifying the corresponding parameter value. In this case the point through which we want the modified curve to pass can be specified on the cylinder of paths. (In case of plane curves this cylinder degenerates to a plane region.) Using the generator that passes through the specified point, we can determine the corresponding parameter τ of the curve. Then, we can proceed according to the previous Subsection. 4.3 Simultaneous modification of two shape parameters We assume that shape parameters Ci and Ci+1 are modified simultaneously. Both parameters affect only the arc pi (τ ). It is obvious from expression (2) that any point pi (τ ) of the arc moves within a parallelogram. Sides of this parallelogram are parallel to the directions bi−1 −2bi +bi+1 and bi −2bi+1 +bi+2 , and the endpoints of one of its diagonals are (1 − τ ) bi + τ bi+1 and pi (τ ) with Ci = Ci+1 = 0. Based on these observations, we can develop shape modification methods simultaneously altering two shape parameters. 4.4 Shape control by modifying two shape parameters One can move a curve point to a specified location by modifying two shape parameters as well. We assume that pi (τ ) is modified by simultaneous alteration of the shape parameters Ci and Ci+1 . Steps of the modification procedure in an implementation are as follows: • select the point r to be moved on the arc, i.e. fix the parameter τ , (r = p(τ )); • the system displays the parallelogram that contains the permissible positions of the selected point; • specify the new position q of the selected point within the parallelogram. Point q can be written in the form q = o + λe0 + µe1 , λ ∈ [0, M0 (τ )] , µ ∈ [0, M1 (τ )] in the affine coordinate system with origin o and base vectors e0 and e1 , where o e0 e1
= (1 − τ ) bi + τ bi+1 = bi−1 − 2bi + bi+1 = bi − 2bi+1 + bi+2 π (1 − τ ) − sin (π (1 − τ )) M0 (τ ) = 4π πτ − sin (πτ ) . M1 (τ ) = 4π The trigonometric equations Ni,0 (τ ) = λ and Ni,3 (τ ) = µ have to be solved for Ci and Ci+1 , respectively. Both equations have a unique solution due to the geometric constraints applied to point q. The regula falsi root finding method
10
Mikl´ os Hoffmann and Imre Juh´ asz
Figure 5. Shape modification by the simultaneous alteration of C2 and C3 ; the yellow parallelogram is the permissible region of the new position q (cf. Subsection 4.2) can also be applied here. This type of shape modification is illustrated in Fig. 5. Parallelograms above may degenerate to straight line segments. When τ = 0 and τ = 1 parallelograms degenerate to segments bi pi (0) and bi+1 pi (1), respectively, regardless of the position of control points. However, there are configurations of control point when parallelograms degenerate ∀τ ∈ [0, 1]. For this the equality (bi−1 − bi ) + (bi+1 − bi ) = λ ((bi − bi+1 ) + (bi+2 − bi+1 )) is necessary to hold for some λ ∈ R\ {0}. From this we obtain (bi−1 − bi ) = (1 + λ) (bi − bi+1 ) − λ (bi+1 − bi+2 ) which means that parallelograms degenerate to straight line segments if the control point bi−1 is on the straight line that passes through the points bi + (bi − bi+1 ) and bi + (bi+1 − bi+2 ). Another practical shape control scenario when we do not fix a point on the curve but specify a point q in space through which we want the modified curve to pass. Point q can only be in the volume swept by the parallelogram of permissible positions as the parameter τ varies in the range [0, 1]. In case of spatial curves there is always a unique solution to this problem that can be obtained in the following way. We take a plane through the point q parallel to the directions e0 and e1 . Then, we determine the point of intersection of this plane and segment bi bi+1 . The barycentric coordinates of this intersection point with respect to the points bi and bi+1 is the value τ that corresponds to the parallelogram which contains q. Therefore, point pi (τ ) of the curve has
Modifying the shape of FB-spline curves
11
to be moved to q, i.e. the problem is reduced to the task that was just solved previously. In planar case there are more solutions in general, because point q can be in infinite number of parallelograms, except the case when all parallelograms degenerate to line segments. In the general planar case we can determine a range [τ0 , τ1 ] ⊂ [0, 1] for the values of which the pi (τ ) → q shape modification can be solved. This means that we have a free parameter to fulfill an additional constraint, e.g. we can fix the tangent direction at q. In Fig. 6 we can see two different solutions for the p (τ ) → q shape modification by means of the simultaneous modification of shape parameters C2 and C3 .
Figure 6. Two different solutions for the p (τ ) → q shape modification with the simultaneous modification of shape parameters C2 and C3
5. Endpoint interpolation In applications such B-spline curves are used that pass through the first and last control points. Endpoint interpolation can also be achieved in case of FBspline curves. For the equality p1 (0) = b0 (for arbitrary C1 , C2 ) equalities N1,0 (0) = 1, N1,1 (0) = N1,2 (0) = N1,3 (0) = 0 would be necessary, which is impossible due to the property N1,2 (0) = N1,0 (0) − 2N1,3 (0) of basis functions. An option for endpoint interpolation is to specify extra control points b−1 and bn+2 by means of which we obtain new arcs p0 (τ ) and pn (τ ) that pass
12
Mikl´ os Hoffmann and Imre Juh´ asz
through control points b0 and bn+1 , respectively. For the interpolation at b0 we generate the arc p0 (τ ) =
N0,0 (τ ) (b−1 − 2b0 + b1 ) + N0,3 (τ ) (b0 − 2b1 + b2 )
(4)
+ (1 − τ ) b0 + τ b1 Equality p0 (0) = b0 holds if the first term of (4) vanishes at τ = 0, since N0,3 (0) = 0. i) The first term in (4) is zero if C0 → ∞, regardless of the position of control point b−1 . ii) The first term of (4) also vanishes if b−1 = 2b0 − b1 for all permissible values of shape parameter C0 . iii) Interpolation at b0 can also be achieved by increasing the multiplicity of b0 . As we have seen in Subsection 3.2, the curve passes through triple control points and depending on the value of the knot’s shape parameter, it contains a segment of a control polygon side. e0 = b e1 = b e 2 = b0 , b e j = bj−2 , (j > 2) and shape parameBy control points b e e e e ters Cj = Cj−2 , C0 = C1 = C2 = C0 (C0 is arbitrarily chosen) we obtain new arcs e 1 (τ ) = b0 + N1,3 (τ ) (b1 − b0 ) , p e2,0 (τ ) (b1 − b0 ) + N e2,3 (τ ) (b0 − 2b1 + b2 ) + (1 − τ ) b0 + τ b1 . e 2 (τ ) = N p e2,3 (τ ) = N0,3 (τ ) e 1 (1) = p e 2 (0) is on the segment b0 b1 . The equations N Point p e and limC0 →∞ N2,0 (τ ) = 0 yield e 2 (τ ) = p0 (τ ) , τ ∈ [0, 1] lim p
C0 →∞
therefore we obtain the result of extra control point ii) as a special case. Shape parameter C0 can be used to control the shape of the extension of the FB-spline curve. This value can be given by the specification of point of contact on the segment b0 b1 . Interpolation at the endpoint bn+1 can be derived analogously. In Fig. 7 we can see an example for endpoint interpolation by means of control point multiplicity. One can observe that the values of C0 and C3 are not significant, i.e. there is only a slight deviation from those arcs that can be obtained by extra control points (C0 → ∞). 6. Acknowledgements The authors wish to thank the Hungarian National Scientific Fund (OTKA No. T048523) and National Office of Research and Technology (Project CHN37/2005) for their financial support of this research.
Modifying the shape of FB-spline curves
13
Figure 7. Endpoint interpolation with different shape parameters
References
1. Q. Chen and G. Wang, A class of B´ ezier-like curves, Computer Aided Geometric Design 20(2003), 29–39. 2. M. Hoffmann, Y. Li and G. Wang, Paths of C-B´ ezier and C-B-spline curves, Computer Aided Geometric Design 23(2006) 463–475. 3. I. Juh´ asz, On the singularity of a class of parametric curves, Computer Aided Geometric Design 23(2006), 146–156. 4. Y. Li and G. Wang, Two kinds of B-basis of the algebraic hyperbolic space, Journal of Zheijang Univ. Sci. 6(2005), 750–759. 5. Y. L¨ u, G. Wang, and X. Yang, Uniform hyperbolic polynomial B-spline curves, Computer Aided Geometric Design 19(2002), 379–393. 6. E. Mainar and J.M. Pena, A basis of C-B´ ezier splines with optimal properties, Computer Aided Geometric Design 19(2002), 291–295. 7. E. Mainar, J.M. Pena and J. Sanchez-Reyes, Shape preserving alternatives to the rational B´ ezier model, Computer Aided Geometric Design 18(2001), 37–60. 8. G. Morin, J. Warren and H. Weimer, A subdivision scheme for surface of revolution, Computer Aided Geometric Design 18(2001), 483–502. 9. H. Pottmann, The geometry of Tchebycheffian splines, Computer Aided Geometric Design 10(1993), 181–210. 10. H. Pottmann and M. Wagner, Helix splines as an example of affine tchebycheffian splines, Adv. Comput. Math. 2(1994), 123–142. 11. G. Wang, Q. Chen and M. Zhou, NUAT B-spline curves, Computer Aided Geometric Design 21(2004), 193–205. 12. Q. Yang and G. Wang, Inflection points and singularities on C-curves, Computer Aided Geometric Design 21(2004), 207–213. 13. J.W. Zhang, C-curves, an extension of cubic curves, Computer Aided Geometric Design 13(1996), 199–217. 14. J.W. Zhang, Two different forms of CB-splines, Computer Aided Geometric Design 14(1997), 31–41. ezier curves and surfaces, Graph. Models Image Processing 61(1999), 15. J.W. Zhang, C-B´ 2–15.
14
Mikl´ os Hoffmann and Imre Juh´ asz
16. J.W. Zhang and F.-L. Krause, Extend cubic uniform B-splines by unified trigonometric and hyperbolic basis, Graphical Models 67(2005), 100–119. 17. J.W. Zhang, F.-L. Krause and H. Zhang, Unifying C-curves and H-curves by extending the calculation to complex numbers, Computer Aided Geometric Design 22(2005), 865–883. Mikl´ os Hoffmann received his MSc and PhD at University of Debrecen, Hungary. From 1990 to 1997 he was an assistant and associate professor at Univ. Debrecen. Since 1997 he is at K´ aroly Eszterh´ azy University, Eger, Hungary. His research interests focus on computer aided geometric design, including geometric properties of curves and surfaces and scattered data modeling. Institute of Mathematics and Computer Science, K´ aroly Eszterh´ azy University, Eger, Leanyka str. 4., H-3300 Hungary e-mail:
[email protected] Imre Juh´ asz is an associate professor at the Department of Descriptive Geometry at the University of Miskolc in Hungary. He graduated from Kossuth Lajos University of Sciences and Arts in Debrecen, from where he also obtained his doctorate. His research interests are computer aided geometric design and constructive geometry. Department of Descriptive Geometry, University of Miskolc, Miskolc–Egyetemv´ aros, H3515 Hungary e-mail:
[email protected]