Group Title: Department of Computer and Information Science and Engineering Technical Reports
Title: Curvature continuous free-form surfaces of degree 3 x 5
Full Citation
Permanent Link:
 Material Information
Title: Curvature continuous free-form surfaces of degree 3 x 5
Series Title: Department of Computer and Information Science and Engineering Technical Report ; 01-02
Physical Description: Book
Language: English
Creator: Peters, Jorg
Publisher: Department of Computer and Information Science and Engineering, University of Florida
Place of Publication: Gainesville, Fla.
Publication Date: February 20, 2001
Copyright Date: 2001
 Record Information
Bibliographic ID: UF00095469
Volume ID: VID00001
Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.


This item has the following downloads:

2001315 ( PDF )

Full Text

CISE-TR-01(02):Curvature Continuous

Free-Form Surfaces of Degree 3 x 5

Jorg Peters

Feb 20 2001

This paper introduces for d > 0 a technique for modeling curvature continuous
free-form surfaces of unrestricted patch layout using patches of maximal degree
3 x (d + 2) with the flexibility at extraordinary points of C2 splines of degree d.

1 Introduction

Two regular Ck maps p, g : 1'-' -' join Gk via r : .-' '. along an edge e if r
has certain standard properties detailed in Section 2 and

(Oap)(e) = ((g o r))(e), = 0,...k.

If (&Or) (e) is a (univariate) polynomial of degree ++ 1 and g is a (bivariate) polynomial
of total degree d then, applying the chain rule to compositions (see Faa di Bruno's Law
in the Appendix), (Oap) (e) is of degree d + r. For k = 2 and d > 0 this simple fact
allows us to construct curvature continuous free-form surfaces of unrestricted patch
layout from patches of maximal degree 3 by d + 2 with the flexibility of Ck degree d
(vertex) splines at the extraordinary points where n quadrilaterals meet. The case d = 3
has been implemented and an example is shown in Figure 8.

1.1 Prior Work
To date curved surface constructions of degree 3,3 for arbitrary patch layout are only
tangent continuous (see e.g. [GZ94, Pet94, Rei95, Pet00]). Even if we use an infi-
nite sequence of bicubic patches near the extraordinary points, as in the Catmull-Clark
generalized subdivision scheme [CC78], we obtain at best bounded curvature [Sab91].
With the exception of [GZ99], curvature continuous polynomial constructions using
tensor-product patches are of degree 9,9 or higher [Hah89, GH89, Ye97] or they use a
smart approach developed by Prautzsch and Reif [Pra97, Rei98]: a disk-shaped region
in 1.-' defined by a Ck tensor-product spline of degree bi-(k+ 1) is mapped onto a poly-
nomial surface of degree d in J-. to cover the neighborhood of an extraordinary point
by a surface of degree d(k + 1). For k = 2 and d = 2 this approach yields curvature
continuous surfaces of degree 6,6; and also undesirable flat patches at higher-order


r R2


Figure 1: Reparametrization r and geometry maps p and g. For a Gk join the Kth
transversal derivatives of g o r and p have to agree along the common boundary p(e).

saddle points. Increasing d to 3 as suggested in [Rei99] to avoid the flat regions and
obtain the desirable curvature shown in Figure 8,(right) yields again patches of de-
gree 9,9. The curvature continuous constructions according to [GH95, DL89] use high
degree rational patches while [Du88, Her96] use second order 'Gregory patches' of
degree 5,5. Such patches have a complex normal and twice the number of coefficients
of a polynomial degree 3,5 patch.

2 Smooth Joining of Trimmed Patches

Two regular Ck maps p, g : 1-. h-.' join Gk via r : h-' J- '. along an edge e if
(O'p)(e) (o(g or))(), = 0,... ,k,
where, as illustrated in Figure 1, the invertible Ck reparametrization r maps a neigh-
borhood of an edge e of the domain D ofp into the neighborhood of a curve segment
in the domain A of g (a dashed unit triangle) so that outward pointing vectors e1 map
to inward pointing vectors. Here

[ag 29 291
O [d I 02g "["7 du... ,etc.

If r is the identity thenp and g are said to join parametrically Ck and if 04f/o .
is continuous then f E C2'2. By transforming the domain, r modifies the flow of
parameter lines and restricts the evaluation to r(D) effectively trimming the patch re-
sulting from composition with g. In the following p and g are called geometry maps to
emphasize that they determine the local shape and curvature of the surface.

E'' E'

i 7 E i


Figure 2: (top:) The reparametrization ri maps two abutting edges e and e- of D to
abutting halves of edges E+_ and Ei of a regular n-gon. (bottom:) An n-sided vertex
neighborhood g o r and the L-shaped regions p pi and p_ that form the Hermite
extension. gi o ri(D) is a restriction of g (A).


If p and g are polynomials then it suffices to consider derivatives only in the direc-
tion of e1 perpendicular to the domain edge e. In the following, we are interested in
the degree of univariate polynomials defined on e after differentiating in the direction
e'. We denote the degree of the tth derivative in the direction e1 of a map f restricted
to e by


The key points of the new construction for k = 2 are

1. the geometry map g is of total degree k + 1

2. and d = 1.

The composition g o r restricted to e is therefore of degree 3. We generalize this idea
to arrive at the following central theorem.

Theorem 1 Let A denote the 2-unit triangle, D the unit square, Q the symmetric n-
gon with vertices vj := (cos(jO), sin(jO5), ( := 27r/n and edge-midpoints mj :=
(.', I +vj)/2, Q the n-sidedpolygonal disk with boundary Q and quadrilateral sectors
Q with vertices 0, mi-1, vi, mi, and c := cos(O), s := sin(O5) and Q := [- 8].
Consider an extraordinary point where n four-sided patches g o ri(), i = 1,... ,n
meet as shown in Figure 2, (bottom). If
the reparametrizationr : {1,... ,n} x D C F. F" .
(1) consists ofn pieces ri : O J'-' such that ri maps D exactly onto -i,
(2) r' maps two il,'itii,,i edges e and e- of O to
l'i;,,il,,i. halves of edges E!i = [vi, and E' = [vi, mi- ]
of (cf Figure 2, top),
(3) r is parametrically C2'2 and invertible at all points of Q, and
(4) d, = K. + 1, = 0, 1, 2 and
the geometry map g : {1,... ,n} x A C .' .
(5) is parametrically C2 and
(6) consists ofn total degree 3 polynomial pieces gi : A p.'
(7) that surround the extraordinary point without self-overlap
then the composition g o r

has a parametrically C2'2 Hermite extension p across Q and dp = + 3, =
0, 1, 2; and

the n-sided vertex neighborhood (g o r)(Q) can be parametrized by n bi-cubic
patches that join G2.

Examples of maps r for various n are shown in Figure 3. Examples of geometry maps
g are shown in Figure 6, right. Figure 8 shows Hermite extensions (red = dark grey)
and vertex neighborhoods (cyan-green = medium grey) consisting of n bicubic patches.

Proof We define the first three Taylor terms of the ith L-shaped piece pi pi, p_ of
p by extending gi across E' and El_. Specifically, with the layout of Figure 2, for
S-= 0,1,2, (0p'i)(e) := ((Sgi o ri))(e), (p )(e-) := (Q0(gi o r'))(e-) and,
at the intersection of e and e-, '"p' = Qp = Kpt Dropping the superscripts and
subscripts and applying the chain rule to g o r, we obtain the table below. The left
column lists the expansion of the composition, i.e. FAa di Bruno's Law for r = 0, 1,2,
the center column lists the (formal) degree of the expansion restricted to the edge e
given that d 1 and the last column lists the degree due to dg = 3 and d' = n + 1
and proves d' = n + 3, for = 0, 1,2.

derivative degree (do = 1) =
gor dO 3
0 go r dg d + d, 4
T. *((92g) or) +(yg) or*2 r max{d +2d, ,dg + d2 5
On Q, the extension p is C2,2 as the composition of two parametrically C2,2 maps, g
and r.
For the second claim, since ri maps O exactly onto 0Q there exist bilinear maps
bi : O h-.' such that bhi() = Q' = ri(0) and hence gi o bi(0) = gi o ri(0). Now
gi o bi is of degree 3,3 and joins G2 via (bi)-1 o ri with the ith L-shaped piece of p.
The pieces gi o b join G2 since bi only trims the domain of gi to 2 x

We now check that the required maps g and r exist. The proof is by construction.
We define the reparametrization r : {1,... ,n} x O h.-' composed of n bicubic
B6zier patches as illustrated in Figure 4 for n = 5:

a. By symmetry, the control point with index 00i, i = 1,... ,n common to all
patches is located at the origin. The remaining 15 control points of each degree
3,3 piece are derived as the control points of two symmetric triples of curve
segments in B6zier form.

b. The outermost curves are linear segments forming the boundaries of Q (Figure
4, left). In B6zier form, degree-raising to formal degree 3 and subdivision at the
midpoint creates 7 control points (Figure 4, right) per edge, i.e. the control points
with indices j3i and 3ji, j = 0, 1, 2, 3.

c. The 7 control points of the second layer from the outer boundary represent a
quadratic curve segment (Figure 4, middle), raised to degree 3 and subdivided
at the midpoint. The first and the last B6zier control point of the ith quadratic
segment are 32i and 23i+i. After subdivision at the midpoint, symmetry forces
that the second control point agree with its symmetric counterpart about the patch
diagonal from 00i to 33i, and this uniquely determines the quadratic. Degree-
raising yields the control points with indices j2i and 2ji, j = 0, 1, 2.

d. The third layer of coefficients are the control points of a piecewise cubic curve
(Figure 4, right). Two control points of each cubic are 31i, 21i respectively

Figure 3: For n = 3,..., 8, the B6zier control points of n bicubic maps ri : O j.-',
i = 1,... n, that join C2,2 at the midpoints of the n-gon boundary.

13i+1 and 12i+1. Two additional control points are pinned dowr by the required
C2 join of the two cubics, and the shared final coefficient is used to satisfy the
symmetry requirement and obtain a unique location for 11. This defines the
remaining control points with indices j1i and 1ji, j = 0, 1.

For n = 4 the above construction yields, modulo rotation, the identity map.

Lemma 2.1 The map r : {1,... n} x D .-' defined above satisfies (1) -(4) of
Theorem 1.

Proof Properties (1) and (2) are explicit in the construction. Since (Oari/OK"e)(e)
is the same polynomial as (OKri+l/*ie'-)(e-) for r = 0, 1 and two pieces of a C2
spline for t = 2 the pieces join C2,2 at the mi and are of degree rt + 1 as required by
(3) and (4). Regularity on 0 follows from the explicit position of the control points.

Figure 4: The control points of the bicubic reparametrization lie on linear, quadratic and
cubic spline curves respectively from the outside to the center o of Q (here a pentagon).

We define a geometry map satisfying (5), (6) and (7) as a C2 spline with cubic
pieces g' and a piecewise symmetric domain shown in Figure 5. The figure also shows
the B6zier index triples a -= aoala2 of one spline piece, i E {1,... n}

E g'(a)Ba, B,(u,v)= 3! (1-U-v)aouargLa2
o+a1+a2=3 o2 3!

The Ba are the cubic B6zier basis functions. We prove that such a spline has at least
one degree of freedom for each boundary curve.

Lemma 2.2 A spline c ,1, r,,, i of
(i) n C2-connected, total-degree Bezier polynomials
(ii) on rotationally symmetric, ll';,ilti, three-sided domains A that radially surround
an n-valentpoint (c.f Figure 5)
has at least n + 6 degrees of freedom. These may be chosen as six Bezier c effci ent.,
(control points)

g9(300), g (210), g'(201), g9(120), g'(111), g(102),

that determine the quadratic Taylor expansion at the point, and

g'(003),i = 1,... ,n,

the fourth Bezier coefic ient of each boundary curve. Ifn = 3 or n = 6 one additional
cciefic lent. e.g. g9(210) can be prescribed. If n = 4 two additional coefficient.. e.g.
g'(210) and g(120) can be prescribed.

Figure 5: Coefficient indices of a cubic spline g for n = 6.

Proof The parametric C2 transitions and gl(ao00a 2) for ao > 0 determine the
coefficients with ao > 0. Setting the n-valent point to be the origin and defining
c := cos(2r/n),s := sin(2r/n), the remaining C1 conditions for i = 1,... ,n are

gi(012) gi(102) + gi+1(021) gi(102) = 2c(gi(003) gi(102))

since three consecutive vertices of the n-gon are related by (c) + ( c) = 2c( ).
Solving for g (012) and substituting yields the circulant system

gi+2(021) + 4cgi+1(021) + gi(021) =
2gi+1(111) + 2cgi+1(003) + 2gi+1(102) 2cgi+1(102) + 4c2gi(003)
+ 12cgi(102) + 2gi(111) 4c2gi(201) 4cgi(111) 4cgi(003)

which is of full rank unless cos(27k/n) = 2c for some k E {0,... ,n 1}. For n > 6
we have 2c > 1 and the lemma holds. The remaining cases are verified directly. M

3 Completion to a Spline Surface

The actual geometry of the triangular patches may be determined by minimizing the
deviation from a proposed set of control points g'(a) of our choice and enforcing
smoothness across the radial edges ei:
m(inaE E i() g() I
i() i=1 ao+a1+a2=3
(QOgi)(ej) = (O'gi+)(ei), i= 1,...,n, = 0,1,2.

Figure 6: (left) The control polyhedron after one Catmull-Clark refinement step; (mid-
dle) the proposal cubics g derived from the once refined Catmull-Clark mesh; (right)
the proposal converted to the closest C2 geometry maps g.

Since the constraints are linear in the coefficients, the quadratic minimization problem
reduces to finding a least solution in the variables hi(a) := gi(a) gi(a) via singular
value decomposition. The coefficient a of gi(a) for ao < 3 may be derived by apply-
ing one Catmull-Clark refinement step (Figure 6, left). Let ci(O0), i = 1,... n be the
point corresponding to an original vertex, e.g. the point on the Catmull-Clark limit sur-
face, and ci(C1 2) the coefficients of the ith tensor-product patch with vertex c(O00)
obtained by knot insertion. Then we may choose gi(a) = ci(a1Q2) for a + 12 < 3.
As shown in Figure 6, the surface segments gi reach halfways across to the neighbor
point of the input control net. Scaling the reparametrization by a factor rsc < 1/2
trims out four-sided surface pieces gi o ri (D) that combine to form n-sided vertex
neighborhoods (cyan-green = medium grey in Figure 8) since r (D) C A. This cutting
back of g creates space so that the first three layers of B6zier control points of the
Hermite extension p = g o r (red = dark grey in Figure 8) still fit a subset of g rather
than extrapolate it.
The resulting vertex neighborhoods can each independently be affinely transformed.
For example they can be scaled by local parameters gsc E [0, 1] to distribute curvature,
i.e. sharpen or smooth out the edge neighborhoods as in [Pet94].
For each vertex neighborhood we now have (cyan-green = medium grey in Figure
8) a parametrization by patches gi o bi of degree 3,3 and the Taylor expansion up to
order 2 of a complex p that parametrically C2'2 extends g o r and hence joins G2 with
the vertex neighborhood. Connecting the vertex neighborhoods by interpolating the
Taylor expansions to form edge patches (red dark grey in Figure 8) is now simple;
it amounts to constructing a univariate C2 spline for each parameter line of the control
net of p_, respectively p_ that interpolates the Taylor expansion at each end. The face
patches (yellow light grey in Figure 8) are constructed by tensoring this approach.
The possible choices for the completion of the surface are displayed in Figure 7. For
the implementation I chose 9 pieces of degree 3,3 to cover the faces.

5x5 3k 5x4 3 5x3 5x3 3

4x4 3x3 3x3
5x5 3x3

_ P+__L

Figure 7: Degree and patch layout choices for covering one input quadrilateral facet.


[BR97] H. Bohl and U. Reif. Degenerate B6zier patches with continuous curvature.
Comput. Aided Geom. Design, 14(8):749-761, 1997.

[CC78] E. Catmull and J. Clark. Recursively generated B-spline surfaces on arbitrary
topological meshes. Computer-AidedDesign, 10:350-355, September 1978.

[CS96] G. M. Constantine and T. H. Savits. A multivariate Fah di Bruno formula
with applications. Trans. Amer Math. Soc., 348(2):503-520, 1996.

[DL89] T. DeRose and C. Loop. The S-patch: a new multisided patch scheme. ACM
Trans. on Graphics, 8(3):204-234, 1989.

[Du88] Wen-Hui Du. Etude sur la representation de surfaces complexes: application
a la reconstruction de surfaces echantillonnees. PhD thesis, Ecole Nationale
Supefieure des T616communications, Paris, France, 1988.

[GH89] John A. Gregory and Jorg M. Hahn. A C2 polygonal surface patch. Comput.
Aided Geom. Design, 6(1):69-75, 1989.

[GH95] C. M. Grimm and J. F. Hughes. Modeling surfaces of arbitrary topology
using manifolds. Computer Graphics, 29(Annual Conference Series):359-
368, 1995.

[GZ94] John A. Gregory and Jianwei Zhou. Filling polygonal holes with bicubic
patches. Computer Aided Geometric Design, 11(4):391-410, 1994.

[GZ99] John A. Gregory and Jianwei Zhou. Irregular C2 surface construction
using bi-polynomial rectangular patches. Comput. Aided Geom. Design,
16(5):423-435, 1999.

[Hah89] Jorg Hahn. Filling polygonal holes with rectangular patches. In Theory and
practice of geometric modeling (Blaubeuren, 1988), pages 81-91. Springer,
Berlin, 1989.

Figure 8: (Left:) Patches of degree 3,3 (cyan-green = medium grey) form vertex neigh-
borhoods. Faces (yellow = light grey) are C2 splines of degree 3,3, while each edge
(red dark grey) is covered by a C2 spline of degree 5,3. Edge and face neighbor-
hoods join parametrically C2 while the vertex neighborhoods join G2 with the rest of
the surface. (Right:) The Gauss curvature of the higher-order (monkey) saddle on the
left with its three dips and three raises. The curvature is zero (green, medium grey) at
the central point and negative (blue, darker grey) in the surrounding region.

[Her96] T Hermann. G2 interpolation of free-form curve networks by biquintic Gre-
gory patches. Comput. Aided Geom. Design, 13:873-893, 1996.
[Knu69] D. E. Knuth. The art of computer programming, volume 1, 2, 3. Addison
Wesley, 1969.
[Pet94] J. Peters. Surfaces of arbitrary topology constructed from biquadratics and
bicubics. In Nickolas S. Sapidis, editor, Designing fair curves and surfaces:
shape quality in geometric modeling and computer-aided design, pages 277-
293. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA,
[PetOO] J. Peters. Patching Catmull-Clark meshes. Siggraph 2000, pages 255-258,
[Pra97] Hartmut Prautzsch. Freeform splines. Comput. Aided Geom. Design,
[PUOO] H. Prautzsch and G. Umlauf. Triangular G2splines. In L.L. Schumaker
P.J. Laurent, A. LeM6haut6, editor, Curve and Surface Design, pages 335-
342. Vanderbilt University Press, 2000.
[Rei95] Ulrich Reif. Biquadratic G-spline surfaces. Computer Aided Geometric De-
sign, 12(2):193-205, 1995.


[Rei98] U. Reif. TURBS-topologically unrestricted rational B-splines. Constr. Ap-
prox., 14(1):57-77, 1998.
[Rei99] Ulrich Reif. Analyse und Konstruktion von 1i;.. i .. NuIi .i. 1 ,,ri,., fur
Freiformflichen beliebiger Topologie. Shaker Verlag, Aachen, 1999.
[Sab91] Malcolm Sabin. Cubic recursive division with bounded curvature. In
L.L. Schumaker PJ. Laurent, A. LeMehaut6, editor, Curves and Surfaces,
pages 411-414. Academic Press, 1991.
[Ye97] Xiuzi Ye. Curvature continuous interpolation of curve meshes. Computer
Aided Geometric Design, 14(2): 169-190, 1997.

4 Appendix: Faa di Bruno's chain rule Law

FaA di Bruno's Law combines the chain rule and the product rule. In one variable
([Knu69], p.50)

0K(g o r) = E CK() ((g) o r) (lr)kl ..... (qKr)k
j=0 K(j)
where 9"g denotes the tth derivative of g and

K(j) := {ki 0,,i = 1,... ,, ki = j, iki = n}, CK(j) := k!(l!)ki ...k,!(!)k

The multivariate case (see e.g. [CS96]) requires notation where (...) encloses the ar-
guments of the multilinear form (Oig) o r and the multiplicity of the arguments is
expressed by superscripts:

,K(g r) =CK(j) ((g) or) ((9lr)kl,. (OKr)k).
j=0 K(j)

We need the derivatives in one direction e1 evaluated along an edge e:

( e(g or) (e) = eK(j) (( .e))k -(e)
j=0 K(j)
An example for t = 0, 1, 2 is given in the table on page 5, left column. If g is of total
degree d and Qr restricted to e is of degree t + 1 then the degree for each summand is

degree (jg) or(e)) ( ((e))k e) = d- j + ki + iki
d-j 2ki (K+1)k
=d-j +j +.

University of Florida Home Page
© 2004 - 2010 University of Florida George A. Smathers Libraries.
All rights reserved.

Acceptable Use, Copyright, and Disclaimer Statement
Last updated October 10, 2010 - - mvs