Content uploaded by Miklós Hoffmann
Author content
All content in this area was uploaded by Miklós Hoffmann on Jan 30, 2016
Content may be subject to copyright.
Journal for Geometry and Graphics
Volume 19 (2015), No. 2, 189–200.
Blending of Spheres by Rotation-Minimizing
Surfaces
Mikl´os Hoffmann1, Juan Monterde2, Ede Troll1,
1Institute of Mathematics and Computer Science, K´aroly Eszterh´azy University
Le´anyka str. 4, H-3300 Eger, Hungary
emails: {hofi, troll.ede}@ektf.hu
2Dep. de Geometria i Topologia, Universitat de Val`encia
Avd. Vicent Andr´es Estell´es, 1, E-46100-Burjassot (Val`encia), Spain
email: monterde@uv.es
Abstract. Computation of the blending surface of two given spheres is discussed
in this paper. The blending surface (or skin), although not uniquely defined in
the literature, is normally required to touch the given spheres in plane curves
(i.e., in circles). The main advantage of the presented method over the existing
ones is the minimization of unwanted distortions of the blending surface. This is
achieved by the application of rotation-minimizing frames for the transportation
of a vector along a given curve, which technique, beyond its theoretical interest,
helps us to determine the corresponding points along the touching circles of the
two spheres. Parametric curves of the blending surface are also defined by the
help of the rotation minimizing transportation.
Key Words: sphere based surface design, skinning, blending surface, rotation
minimizing frame
MSC 2000: 68U05, 65D17, 53A04
1. Introduction and related work
The problem of joining spheres by a surface being tangent to them is considered by several
authors using various approaches. A common view of this problem in the literature is to find
a blending surface or skin, touching the spheres along circles, where the tangent cone of the
sphere along this circle contains the end tangents of the blending surface [7, 9, 10]. This
problem is of essential importance in newly emerged animation design software tools, such as
ZSpheres R
or SporeTM , where the point-based design is altered by sphere-based construction,
but it also appears in medical applications [9]. Although with somehow similar results, the
well-studied ringed surfaces and canal surfaces (see, e.g., [13, 14]) have different input data:
ISSN 1433-8157/$ 2.50 c
2015 Heldermann Verlag
190 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
while our approach starts from a finite set of spheres, in case of ringed and canal surfaces
a continuous function is required. The final skinning surface consists of patches connecting
pairs of spheres [7], thus here we consider a subproblem of connecting two spheres where
touching cones are also provided (cf. Figure 1), [8].
Dupin cyclides and their generalizations have also been applied to this problem (see, e.g.,
[8, 11, 16] and references therein) with a deep geometric view, but also with restrictions on the
positions of the initial data: in case of a single cyclide surface the axes of the touching cones
must be coplanar, while in case of two joining cyclides the geometric form of the blending
surface has not always been satisfactory, since the two cyclides may form unnecessary large
twist for some initial positions. Similar geometric restrictions to the initial data are supposed
in [15], the axes of the given cylinders must be coplanar. In our approach the axes of the
touching cones can be in arbitrary position.
An iterative method of skinning has been introduced in [10] and [9], where, starting from
an initial skin, an energy function is minimized during the iterations in order to reach the
optimal surface. This method has certain advantages from the viewpoint of optimization, but
it is also quite sensitive for the initial position of the skin, and due to the iterative nature it
is quite slow with no proven convergence.
Another field of classical geometry has been used in [7], where a set of spheres has been
blended by surface patches. In this approach the touching circles are computed with the help
of Apollonian circles, and the blending surface is formed by cubic Hermite interpolants.
Although this method works for almost all positions of the initial data, the final surface,
just as in case of all the above mentioned methods, may suffer from distortions due to the
unwanted rotation along the central (spine) curve. The source of this distortion is the fact that
the pairing of corresponding points on the two touching circles is not solved in a sufficient
way. To avoid the unnecessary rotation of the blending surface along the spine curve, a
straightforward idea is to apply the recent results of rotation-minimizing frames. These
frames, originally developed as an alternative of the well-known Frenet frames of parametric
curves, were also known as relatively parallel adapted frames or Bishop frames [1]. They
can provide a sufficient solution of minimizing this kind of distortion along a curve ([5, 6]).
The rotation-minimizing frames have been also applied in constructing surfaces in [12], but
that approach provides only an approximate solution, moreover it requires a continuous one-
parameter set of spheres instead of discrete input data.
The aim of this paper is at providing a method to blend two spheres by a rotation-
minimizing blending surface. The method works for a wide range of initial data and can be
computed in seconds, although not necessarily in real time. The surface is rotation-mini-
mizing in a sense that the parametric curves of the surface have no distortion comparing
to the corresponding rotation-minimizing frame along the spine curve. In Section 2 of this
paper the problem is precisely formulated, together with the overview of the method provided
in [7]. The basic notations and the necessary computational methods are summarized in
terms of rotation-minimizing frames in Section 3, where we also define the notion of rotation-
minimizing transportation along a curve. The solution and the detailed computation are
provided in Section 4.
2. The problem
Suppose that two spheres are given in R3. For our problem it is enough to consider the cones
which touch the spheres along two arbitrary circles (pi, ri) and (pf, rf), having centers piand
M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces 191
p
i
r
i
r
f
p
f
xf
xi
v
i
v
f
Figure 1: Visualization of the statement of the problem. The initial data contain
two spheres and their touching cones.
pfand radii riand rf, respectively. Let xibe the apex of the tangent cone touching the first
sphere along the circle (pi, ri), while xfis the apex of the tangent cone touching the second
sphere along the circle (pf, rf) (see Figures 1 and 5).
Further, let tiand tfbe vectors from the center of the given circles, parallel to the axes
of the touching cones, that is citi=xi−piand cftf=xf−pffor some ci, cf∈R\ {0}.
Our aim is to define a surface s(θ, t) touching the given spheres at the given circles with
the least possible distortion. It is constructed in a way that the parametric curve s(θ∗, t) which
belongs to a fixed value θ∗will connect a point qiof the first circle and the corresponding
point qfof the second circle, while tangent vectors of the curve in these points will be parallel
to the corresponding generatrix of the tangent cone, that is
s(θ∗,0) = qi,s(θ∗,1) = qf,
∂s
∂t (θ∗,0) = vi,∂s
∂t (θ∗,1) = vf
where
vi=aixi−qi,vf=afxf−qf(1)
with ai, af∈R+.
The key question is: which point qfof the second circle should belong to the initial point
qi? In [7] a fast and simple algorithm is provided to compute the corresponding points. By
defining an arbitrary direction enot parallel to tiand tf, the two corresponding points are
defined by the vectors e×tiand e×tf, more precisely
qi=pi±ri
e×ti
ke×tik,qf=pf±rf
e×tf
ke×tfk,
where the sign of the latter terms depends on the measures of the angles between the vectors
tiand pf−pi, and tfand pf−pi, respectively. If the angle is greater than π/2, then the
192 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
qi
qf
Figure 2: A surface blending the given spheres touching them at the given circles.
sign is negative, otherwise it is positive. Further pairs of points are obtained by the rotation
of the original pairs along the circles.
Note, that the choice of ehas not been uniquely defined in this algorithm. A similar,
even more evident choice of the two corresponding points can be defined simply by the vector
ti×tfas
qi=pi+ri
ti×tf
kti×tfk,qf=pf+rf
ti×tf
kti×tfk.
This straightforward but somehow ad hoc selection of corresponding points of the circles
works in a satisfactory way for the cases, when the vectors ti,tfand pf−pi, that is the
axes of the touching cones are parallel or intersecting lines. In most figures of [7] this is the
case. However, if the positions of the touching circles differ from this case, that is the axes of
the touching cones are skew lines, the above mentioned method of mapping of points cannot
be justified. In fact, the blending surface is heavily affected by the choice of corresponding
points and can have a kind of distortion in some cases, as it can be seen in Figure 3. Our
aim is to provide a theoretically founded method of finding the most suitably corresponding
pairs of points.
3. Rotation minimizing frames
In this section we briefly overview the basic concept of Rotation Minimizing Frames (RMF in
short) based on [5, 6], and we define the rotation minimizing transportation of a vector along
the curve. Throughout this session we use the well known Frenet-frame denoted by {t,n,b}.
Definition 1. Given a regular curve α: [0,1] →R3, a positively oriented orthonormal frame
{w0,w1,w2}along the curve is called rotation-minimizing frame (RMF) if
1. w0=t,
2. w1
′is parallel to t.
M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces 193
Figure 3: The effect of different choices of corresponding initial points on the circles
deeply affect distortions of the surfaces.
Remark 1.The second condition is equivalent to ask for ˙
w1being parallel to t, where the dot
denotes arc-length derivative.
3.1. Transportation along a curve using a RMF
Given a unit vector wi, orthogonal to α′(0), there is a unique rotation-minimizing frame along
the curve α, denoted by {t,w1,w2}, such that
w1(0) = wi.
Let us recall how to compute it.
w1(t) = cos θ(t)n(t)−sin θ(t)b(t),(2)
194 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
where
θ(t) = θ0−Zt
0
τ(s)ds, (3)
θ0is the initial angle between wi=qi−α(0) and the binormal vector to the curve α(t) at
α(0), b(0), and τdenotes the torsion of the curve α. The arc-length parameter is denoted
by s. If another parameter is used for the curve α, then
Zt
0
τ(s)ds =Zt
0
τ(u)||α′(u)|| du.
The rotation-minimizing transportation (RM-transportation for short) to α(1) of the vector
wialong the curve αuses a rotation-minimizing frame as the vector w1(1). Notice that
||w1(1)|| = 1 and w1(1) ⊥α′(1).
b(0)
b(1)
q
w
w
q
i
i
f
f
0
0
+
Figure 4: The rotation-minimizing map qi→qfbetween the perpendicular
unit circles at the end points of the curve α(t).
Therefore, we can define a map between the perpendicular unit circles at the end points of
the curve α. Given a point qiin the unit circle on the normal plane to the curve at α(0), let
us consider the vector wi=qi−α(0), then qf=α(1) + w1(1). The angle θ+(see Figure 4)
is defined as
θ+=−Z1
0
τ(u)||α′(u)|| du.
Notice that in this way we can control which point qfin the second circle is associated with
a given point qiin the first circle, while the tangent vectors of the parameter curve of the
surface joining qiand qfare inherited from the touching cones.
4. The solution
In order to apply the rotation-minimizing frame method, at first we define a spine curve α(t)
of the blending surface. For the notations see Figure 5.
M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces 195
Let α: [0,1] →R3be a regular curve satisfying the C1-Hermite conditions:
α(0) = pi,α(1) = pf,
α′(0) = ti,α′(1) = tf.
Let wi=qi−pi
ri
and let wfbe the RM-transportation to α(1) of the vector wi.
Being rfthe radius of the second circle, let us define the corresponding point qfas
qf=pf+rfwf.
We construct the parametric curve s(θ0, t) = β(t): [0,1] →R3such that
β(0) = qi,β(1) = qf,
β′(0) = vi,β′(1) = vf,(4)
hold, and further on the curve follows the RM-transportation, that is for any t∈[0,1], the
vector β(t)−α(t) is parallel to w1(t), where w1(t) is the actual position of the RM-transported
vector.
The last condition implies that there exists a function λ: [0,1] →Rsuch that
β(t) = α(t) + λ(t)w1(t).
Therefore
β′(t) = α′(t) + λ′(t)w1(t) + λ(t)w1
′(t) = ||α′(t)|| (1 + µ(t)λ(t)) t(t) + λ′(t)w1(t),
pp
pp
ii
xx
ii
qq
q
q
ii
f
f
f
f
f
f
f
f
f
f
f
f
x
x
tt
t
t
ii
ww
w
w
ii
vv
v
v
i
i
t( ) t( )
tt
a( ) a( )
tt
b( )
b( )
t
t
wt
wt
1
1
( )
( )
Figure 5: Visualization of various notations in two different positions of initial data
(with unit spheres). The spine curve α(t) (purple) and one of the parameter curves β(t)
(black) can also be seen.
196 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
where we have used that, since {t,w1,w2}is a rotation-minimizing frame,
˙
w1(s) = µ(s)t(s)
or, equivalently,
w1
′(t) = ||α′(t)||µ(t)t(t).
Let us compute explicitly the function µ(s) = h˙
w1(s),t(s)i. From (2) we have
˙
w1=−˙
θsin(θ)n+ cos(θ)˙
n−˙
θcos(θ)b−sin(θ)˙
b
=−˙
θsin(θ)n+ cos(θ)(−κt−τb)−˙
θcos(θ)b−sin(θ)τn
=−cos(θ)κt,
where we have applied that ˙
θ=−τ(see (3)). Therefore,
µ(s) = −cos(θ(s))κ(s).(5)
Let us write conditions (4) in terms of the function λ(t).
β(0) = α(0) + λ(0)w1(0)
=pi+λ(0)wi
=pi+λ(0)qi−pi
ri
.
Since we asked for β(0) = qi=pi+ (qi−pi), then
λ(0) = ri.(6)
Analogously,
λ(1) = rf.(7)
More conditions on λcan be obtained through the derivative of the curve β:
β′(0) = ||α′(0)|| (1 + µ(0)λ(0)) t(0) + λ′(0)w1(0)
= (1 + µ(0)ri)ti+λ′(0)qi−pi
ri
.
Since β′(0) = vi=ai(qi−xi) (see Eqs. (4) and (1)), then
λ′(0) = −airi(8)
and
1 + µ(0)ri=aici.
According to Eq. (5), µ(0) = −cos(θ0)κ(0). Therefore,
ai=1
ci1−cos(θ0)κ(0)ri.(9)
This means that the length of the initial tangent vector to the curve βdepends on θ0, κ(0)
and ri. Analogously,
λ′(1) = −afrf(10)
and
af=1
cf1−cos(θ(1))κ(1)rf.(11)
M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces 197
Figure 6: Three positions of initial data, each with the spine curve (left) and the
computed surface (right).
Remark 2.One restriction must be considered: Since both aiand afmust be positive, the
spine curve has to be such that
κ(0)ri≤1,and κ(1)rf≤1.
Such conditions can be satisfied through a convenient choice of the initial and final vectors,
α′(0) = tiand α′(1) = tfof the spine curve. A simple computation shows that the curvature
of the spine curve at the initial point is
κ(0) = 2 ||ti×(3(pf−pi)−tf)||
||ti||3.
Short length initial and final vectors could produce spine curves with large initial and final
curvatures. Curvatures not satisfying the restrictions at the endpoints of the spine curve may
198 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
yield self-intersections of the resulting surface, as it can be seen in Figure 7. In the special
case where the center of one sphere is in the other sphere and the angle between the planes of
touching circles is larger than 45◦the necessarily restricted spine curve cannot be computed
and thus our method cannot provide the rotation minimizing blending surface.
Figure 7: Curvatures not satisfying the restrictions at the endpoints of the spine curve
may yield self-intersections of the resulting surface (right). Smooth blending surface can
be obtained for the same initial data with an appropriate choice of spine curve (left).
The easiest solution for function λis the Hermite solution of Eqs. (6), (7), (8), (10):
λ(0) = ri, λ(1) = rf, λ′(0) = −airi, λ′(1) = −afrf,
where aiand afare given by Eqs. (9) and (11). This is
λ(t) = rft2(3 −2t+af(1 −t)) −ri(−1 + t)2(−1 + (−2 + ai)t).
While the results of our method for various initial data can be seen in Figure 6, one can also
observe the advantages of this technique in the comparison of the results of the method of [7]
and the provided solution (Figure 8). The earlier method may yield unnecessary distortions
of the surface, while our rotation minimizing surface has no such distortion. In the sense of
rotation minimization, our blending surface is optimal.
5. Conclusion
A novel method of skinning of spheres has been presented where the key step is the rotation
minimizing transportation of a vector along the spine curve. By the help of this technique
the corresponding points of the touching circles are determined and thus the resulted surface
has no unwanted distortions. Due to the time consuming integration of the torsion during
the computation, a couple of seconds is required to compute the skin, that is, no real time
computation is possible, in which sense further improvements may be necessary.
M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces 199
Figure 8: Comparison of results of the earlier method (left) and our method (right).
Surfaces at the right side have visibly less distorted shape.
Acknowledgement
The first author would like to thank the Universitat de Val`encia for the warm hospitality
during his stay. The second author has been partially supported by grant MTM2009-08933
from the Spanish Ministry of Science and Innovation.
References
[1] L.R. Bishop:There is more than one way to frame a curve. Amer. Math. Monthly 83,
246–251 (1975).
[2] R.T. Farouki:The conformal map z→z2of the hodograph plane. Comput. Aided
Geom. Design 11, 363–390 (1994).
200 M. Hoffmann, J. Monterde, E. Troll: Blending of Spheres by Rotation-Minimizing Surfaces
[3] R.T. Farouki:Pythagorean-Hodograph Curves. Algebra and Geometry inseparable.
Springer, Berlin 2008.
[4] R.T. Farouki, T. Sakkalis:Pythagorean hodographs. IBM Journal of Research and
Development 34/5, 736–752 (1990).
[5] R.T. Farouki, C.Y. Han:Rational approximation schemes for rotation-minimizing
frames on Pythagorean-hodograph curves. Comput. Aided Geom. Design 20, 435–454
(2003).
[6] W. Wang, B. J¨
uttler, D. Zheng, Y. Liu:Computation of Rotation Minimizing
Frames. ACM Transactions on Graphics 27, article 2, (2008).
[7] R. Kunkli, M. Hoffmann:Skinning of circles and spheres. Comput. Aided Geom.
Design 27, 611–621 (2010).
[8] C.K. Shene:Blending two cones with Dupin cyclides. Comput. Aided Geom. Design
15, 643–673 (1998).
[9] G. Slabaugh, B. Whited, J. Rossignac, T. Fang, G.B. Unal:3D ball skinning
using PDEs for generation of smooth tubular surfaces. Computer-Aided Design 42, 18–26
(2010).
[10] G. Slabaugh, G.B. Unal, T. Fang, J. Rossignac, B. Whited:Variational Skin-
ning of an Ordered Set of Discrete 2D Balls. Proc. of GMP 2008, 450–461 (2008).
[11] M. Paluszny, W. Boehm:General cyclides. Comput. Aided Geom. Design 15, 699–
710 (1998).
[12] H.I. Choi, S.-H. Kwon, N.-S. Wee:Almost rotation-minimizing rational
parametrization of canal surfaces. Comput. Aided Geom. Design 21, 859–881 (2004).
[13] M. Bizzarri, M. L´
aviˇ
cka:On modeling with rational ringed surfaces. Computer-
Aided Design 58, 151–161 (2015).
[14] M. Bizzarri, M. L´
aviˇ
cka, J. Vrˇ
sek:Canal surfaces with rational contour curves
and blends bypassing the obstacle. Computer-Aided Design 64, 55–67 (2015).
[15] K. Maleˇ
cek, Z. ˇ
Sibrava:Blending Circular Pipes with a Cyclic Surface. J. Geometry
Graphics 10, 99–107 (2006).
[16] S. Foufou, L. Garnier:Dupin Cyclide Blends Between Quadric Surfaces for Shape
Modeling. Computer Graphics Forum 23, 321–330 (2004).
Received April 7, 2014; final form October 14, 2015