0% found this document useful (0 votes)
14 views

Veltkamp Survey of Continuities and Surfaces: CW/ The Centre For Mathematics The Mathematical Centre Foundation

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Veltkamp Survey of Continuities and Surfaces: CW/ The Centre For Mathematics The Mathematical Centre Foundation

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

1992

R.C. Veltkamp

Survey of continuities of curves and surfaces

Computer Science/Depar tment of Interactive S ystems Report CS-R9202 January

CWI is het Centrum voor Wiskunde en lnformatica van de Stichting Mathematisch Centrum
CW/ is the Centre for Mathematics and Computer Science of the Mathematical Centre Foundation
CWI is the research institute of the Stichting Mathematisch Centrum, which
was founded on February 11 , 1946, as a non-profit institution aiming at the
promotion of mathematics, computer science, and their applications. It is
sponsored by the Dutch Government through the Netherlands organization
for scientific research (NWO).

Copyright «:l Stichting Mathematisch Centrum, Amsterdam


Survey of Continuities of Curves and Surfaces
Remco C. Veltkamp
CWI, Department of Interactive Systems
Kruislaa.n 413, 1098 SJ Amsterdam, the Netherlands
email: [email protected]

Abstract
This survey presents an overview to various types of continuity of curves and surfaces, in
particular parametric (Cn), visual or geometric (Vn , On), Frenet frame (F"), and tangent
surface continuity (T") , and discusses the relation with curve and surface modeling, visibility of
(dis )continuities, and graphics rendering algorithms. It is the purpose of this paper to provide
an overview of types of continuity, and to put many terms and d·efinitions on a common footing
in order to give an understanding of the subject.
1991 Mathematics Subject Classification: 41Al5, 65D07, 68U05
1991 Computing Reviews Classification:
1.3.5 [Computer Graphics] Computational geometry and object modeling.
1.3.7 [Computer Graphics] Three-Dimensional Graphics and Realism.
Key Words and Phrases: Curves, Surfaces, Continuity, Shading, Modeling.

1 Introduction
Many researchers in the wide field of graphics occasionally encounter applications where aspects of
continuity of curves and surface are important. However, many papers on these topics use different
terms and techniques, or are focussed on a single aspect. This holds even for general textbooks
about curves and surfaces for computer graphics and computer aided geometric design [8, 32], and
for survey and tutorial type articles (6, 7, 14, 40, 46]. This confusion of terminology, obscures the
relation between the different methods that describe continuity.
In this paper we explain many notions of continuity (parametric, geometric, visual, (3-, Frenet
frame, tangent surface), and much of the terminology and fundamental notions involved (for ex-
ample n-jet, generalised curvature, Dupin indicatrix). I briefly discuss the relation between types
of continuity and types of splines, such as {3-, 'Y-, v-, r-splines, as well as Catmull-Rom spline curve
and tensor product surface const ructions. I further relate t he notions of continuity to illumination
models and shading algorithms for computer graphics rendering, with visual aspects of continuity.
Although the emphasis of this paper is on breadth rather than depth, many specialized details
are given when that is necessary to develop definitions of continuity etc. However, all proofs of
theorems are omitted; the reader is referred to the appropriate research papers instead.
The rest of this paper has the following structure: Section 2 is about continuity of curves .and
Section 3 about surfaces. Section 4 discusses applications in the field of curve and surface modeling
and Section 5 mentions the implications of continuity for shaded rendering.

Remark 1 The remarks can be skipped without affecting the understanding of t he material. All
following remarks only provide additional terminology related to concepts introduced in the rest
of the text.

Report CS-R9202
ISSN 0169-11 BX
CWI
P.O. Box 4079, 1009 AB Amsterdam, The Netherlands

1
2 Contin uity of curves
2 .1 Fundam entals
An arbitrary curve c is a topological ly one-dimen sional object, in an embeddin g space of arbitrary
dimension larger than one.
A functional curve is a scalar function c : 1R -+ IR.. A parametric curve is a vector-val ued
function c : 1R. -+ m.", ea.eh coordinate componen t being a function of the parameter : c(t)
=
(c1(t), ... , c"(t))T , tmin ~ t ~ tm<>:t• for a cl-dimensional curve. Parametri c curves are often
used
because of their independen ce of a particular coordinate frame. In the rest of the pa.per we
deal
only with parametric curves.
A rational curve c: JR.-+ IR.4 has rational componen ts: c(t) = (!1 (t)/g(t), ... , f 4 (t)/g(t))T
.
Note that arbitrary rational componen ts can always be rewritten so as to have a common denom-
inator, as in the given formulation . The homogeneous curve C : IR. -+ IR.4+1 associated with
the
rational, or projected, curve is C(t) = (!1 (t), ... , fd(t), g(t))T. In the following, all curves can
also
be homogene ous curves, but a rational curve is always denoted explicitly.
One particular type of parametric curve is the polynomia l curve:

(1)
for some integer k > 0, the degree of the polynomia l curve. The coefficient s a; are vectors whose
componen ts are the coefficients for each coordinate . The number of coefficient vectors, k +
1, is
the order of the polynomia l. Polynomia l curves are often used because they are easy to handle,
for
example for evaluation and determinat ion of derivatives .

DEFINITIO N 1 (SUPPORT ) The support of a {basi:J} function is the closure of the


.set of parameter
values for which it is non-zero.
A function has local support if its support is finite-
In Equation ( 1) the curve is represented as a linear combinati on of the so called power basis
functions 1, t 1 , ... , t". We can also use other basis functions Bf (t ):

k
(2) p(t) =L a,Bf(t).
i=O

The Bf are often called blending functions, and the a; weights or control points. A well known
example of such blending functions are the Bernstein polynomia ls [9]:

(3)

The derivative of a curve is a vector, the derivatives are taken componen t-wise. The n-th
derivative of a curve c(t) is denoted c<n>(t). To avoid potential problems with the parameter ization
of the curve, we assume in the rest of the paper that the (first) derivative vector of all curves
is
not equal to the null-vector : c< 1>(t) f. 0. Such a curve and its pararneter ization are called regular.
A piecewise polynomia l curve is defined segment by segment. The parameter range is then
partitione d into subranges: tmin = to :::; t 1 ~ .. • tm. = tm.,.,, where t; are fixed parameter values.
The curve is defined for each subrange: s(t) = s,(t), for ti-l :::; t < t;. We are usually interested
in
positionall y continuous piecewise curves:

as in Figure 1, but that is not always necessary.

DEFINITIO N 2 ( K NIOT, BREAKPOI NT, JOINT) The t; are called knots, (to, .. . , tm) is a knot vector
or knot sequence. Multiple knots are consecutive equal knots. Breakpoin ts are distinct knots. s(
ti)
is a junction point or joint, ifs is positional continuous at s(ti)·

2
lmin l I t2 lm-1 lmax

) J J ~ ~
I I I \ \
I I I \ \
I I I \ \
I \ \
I \
I

Figure 1: Piecewise curve.

Multiple knots can be used to influence the shape and the parameterization of the curve.
The parameter subranges can be transformed so as to provide a local parameter v, Vmin $
v $ Vma:i:, for example to normalize into [O, 1]: v = (t - ti)/(ti+ 1 - ti), ti+ l #- t;. The curve
si(t) can then be reparameterized into s ;(v) = s ;(t(v)), Vmin $ v :5 Vmax' in the previous example
t(v) = ti + v(ti+l - t;). In the general case the local parameter ranges are independent of each
other, so the ranges may be disconnected or overlap.
A given curve can have many parameterizations. One import ant parameterization is the arc-
length parameterization:

DEFINITION 3 (ARC-LENGTH PARAMETERIZATION) For a curve s(v), Vmin :5 v :5 V111ax, the arc-
length w as a function of v, is defined as

w(vo ) = ] 11.s<ll(v)lldv,

which is the length of s from s(vmin) to s(vo). The curve s(w) = s(v- 1 (w)) is the corresponding
arc-length parameterized curve.
Here II II denotes the Euclidean norm or length. Although the arc-length is an important concept
it is used primarily for theoretical purposes, e .g. to develop continuity conditions.
The word spline is an East Anglian dialect word, denoting a metal or wooden strip, bended
around pins to form a pleasing shape. It was observed that under gentle bending the shape
corresponds to a piecewise cubic polynomial function having continuous first and second derivatives.
In the context of mathematical curves a spline can be of any degree. The theory of splines originates
from approximation theory. Spline approximation in its present form first appeared in a paper
by Schoenberg (72] , who developed methods for the smooth approximation of empirical tables. In
approximation theory a spline of order n+ 1 is generally defined as a piecewise polynomial of degree
n that is everywhere cn- 1 -continuous (see Section 2.2 for en-continuity). In geometric modeling
it is sometimes desired to model discontinuities on purpose, so that the continuity requirement in
the definition is left out:

DEFINITION 4 (SPLINE) A spline function is a piecewise polynomial function, a spline curve a


curve whose components are spline functions .
One particular spline function is the B-spline (basic spline), so called because translates of this
function form a basis for t he space of spline functions. B-splines were probably already known to
Hermite, and certainly to Peano early this century [73] but were introduced in geometric modeling
by Riesenfeld (68] and have become a popular device for curve and surface design. An easy
introduction to B-spline curves and surfaces is given by Bartels et al. [8]
We are interested in the continuity of spline curves segments r(u), Umin. :Su$ Umax and s(v),
Vmfo :S v :S vTnaz, at points s(vo) and r(uo) on t he curves, in particular at the endpoints r(u,.,,,,.x)

3
and s(vmin) where they are suppos ed to connec t. An import ant
device for the algebra ic aspects of
continu ity is the connec tion matrix (37) which describ es how two
segmen ts are connec ted. I define
the connec tion matrix in terms of then-je t:

D EFINITI ON 5 (n-JET ) For a functio n f(v): IR -+ IR.d and a fixed vo then-je t Dnf(vo )
as (f( vo), f< 1 l ( vo), ... , J(n)( vo))T. is defined

One can also specify an n-jet (oo, ... , on) withou t giving the origina
l functio n.
DEFINI TION 6 (CONN ECTION MATRIX ) The matrix M = (M;i ), i, j = 0, ... , n is a connec tion
matrix for r(u) and s(v) and fixed parameter values uo and
vo, if and only if Dn(s)( vo) =
M Dn(r )(ua).
Note that M applies to all the compon ents of the curve.

2.2 Parametric contin uity


Parame tric continu ity is the classica l notion of continu ity in
analysi s: if a functio n is n times
continu ously differen tiable, or more exactly, the derivat ives exist
and are continu ous, then the
functio n is n-th order parame tric continu ous. In our contex t we
get:
DEFINI TION 7 (PARAM ETRIC CONTIN UITY) Curves
r(u) and s(v) a.re n-th order parame tric con-
tinuous , n ~ 0, at uo and vo if and only if Dn(s)(v o) = Dn(r)( ua).
Parame tric continu ity of order n is denoted en. Positio nal
discont inuity is denote d c - 1 ; C 0 -
continu ity amoun ts to positio nal continu ity. A one-seg ment polyno
mial curve of arbitrary degree ,
see Equati on (1), is C 00 •
If two homoge neous curves in m_d+l are en, then so are the
project ed rationa l curves in IR.d,
provide d that the denominaters q.re non-zer o. Therefo re, en-con
tinuity is said to be project ively
invaria nt. Howeve r, the C"-con tinuity of the homoge neous curves
is not necessa ry for the rationa l
curves to be C". The necessa ry and sufficient conditio ns are as
follows [48].
THEOR EM 1 (RATIO NAL PARAM ETRIC CONTIN UITY)
Let r (u) and s(v) be two homoge neous curves
in md+l . The associated rational curves R( u) and S( v) in !Rd
are en at Uo and Vo if and only
if the denominators of the rationals are non-zer o and there exists
an n -jet ( ao, . .. , an) such that
Dn(s)(v o) = AnD.,.(r)(uo), where matrix A,.=( %) has entries
defined as% = (J)oi-i if i;?: j
and zero otherwise.
So, matrix An looks like

ao 0 0 0
Ck1 oo 0 0
02 201 ao 0
(4) An =
(n-1)
0 °..-1 ("-1)
1 an-2 (n-1)
2 On-3 0
(~)on (~}on-1 (~)on-2 (:)oo
Two curve segmen ts need not have the same derivat ive vector
at their joint in order to have
the same tangen t line, as illustra ted in Figure 2. Similar ly, they
need not be C 2 in order to have
the same normal curvatu re (define d in Section 2.4). A crucial
observ ation here is that d erivativ es
depend on the parame terizati on while the tangen t line and curvatu
re depend on the shape of the
spline and are indepen dent of parame terizati on, i.e. they are intrins
ic.
In order to base the notion of continu ity on intrinsi c aspects
of t he curve, we can follow two
approac hes: take a closer look at the effects of parame terizati
ons (algebr aic approa ch, next sub-
section ) or take the intrinsi c notions like tangent and curvatu
re as a. startin g point (differe ntial
geomet ry approa ch, Section 2.4).

4
Figure 2: Two curve segments joining with derivative of same direction but different magnitude.

2.3 Geometric continuity


Since parametric continuity depends on the parameterization, one possibility for an intrinsic notion
of continuity is to avoid any dependency on a specific parameterization. This leads to a definition
of continuity called geometric, or visual continuity:

DEFINITION 8 (GEOMETRIC CONTINUITY) Curves r(u) and s(v) a.re n-th order geometric contin-
uous at uo and vo, if and only if there exists a reparameteriza.tion u = u(u) such that r(u) = r(u(u))
and s(v) are en a.t s(110).
Geometric contin uity of order n is denoted Gn or Gen, visual continuity vcn or V".
The term geometric continuity was first used by Barsky [5], the term visual continuity by Farin
(28]. However, the concepts of geometric continuity were already exploited in for example [34].
Definition 8 is impractical for applications, since it is non-constructive. By contrast, the chain
and product rule of differentiation show that f(kl(u) = dkr(U.)/duk can be rewritten in terms of
d'r(u)/du' and d'u(u)/du', i = 1, ... , k. For example

ddU.r2 = ddu2 (du)


2 2
r
du.
2
+ dr du.
2

du du.2
Letting f3i indicate uCil(u0 ), we get the following equations:

(5a) s<0>(vo) = r <0>(uo)


(Sb) s<1 >(vo) = ,B r< 1>(uo)
1

(5c) 2
s< >(vo) = .Brr<2 l(uo) + .B2r< 1 l(uo)
(5d) s<3 l(vo)= .BrrC3l(uo) + 3,B1.B2r<2 >(uo) + ,83r< 1l(uo)
4
(5e) s< l(vo) = .Btr<4 >(uo) + 6/3f/32r<3 l(uo) + (4/31/33 + 3..l3?)r<2 >(uo) + f34r< 1 l(uo)

where .81 > 0 is required to let the tangent vectors have the same direction, in which case the
cU1rves are said to have the same orientation. Of course ,81 = 1 and /Ji = 0, i > 1, amounts to
en-continuity.
Equation (5a) amounts to positional continuity, Equation (5b ) means that the derivative vectors
differ only a scalar factor, and (5c) prescribes a dependency as depicted in Figure 3.
The parameters /3i are called shape-handles because they can be used to model the shape of
the curve. In particular, /31 is called bias and {32 tension, because of their specific shape changing
effect. One particular spline that satisfies the ,13-constraints is the ,8-spline [3, 4]. a geometrically
continuous analogue of the B-spline, see also Section 4.1.

5
r(u)

Figure 3: Relation between derivative vectors for geometri c continuit y.

Equat ions (5) can be put in a matrix notat ion:

(6)

where t he connectio n matrix Mn(f3) = (mi;(,B)) result from the chain rule. The entries m;j, i 2: j,
are polynomi als in the /3;-s:

mii(/3) =
k1+k2+··+ k;=j
k1 +2lc2+···+i i:1=i
k 1,k,, ... ,k , ~o

where the coefficients are defined recursive ly by

c(i + l ,j , k 1 , .. . , k;+1 ) = c(i , j -1, k1 -1 , .. . , k;)


+(k1 + l)c(i,j,k1 + l,k2 - l,k3, . . . ,k;)
+ (k2 + 1) c{i , j , k11 k2 + 1, k3 - 1, . . . , k;)

+ (k;-1 +1) c(i,j, k1, k2, . .. , k ;-1 + 1, k; - 1),


where c(i,j, . . . ) = 0 for j > i and c(l, l, 1) = 1. An explicit expressio n for c(i,j, k 1 , ... , k;) is part
of Faa di Bruno's formula [52]:

·1
c(i,j, k1, ... ' k;) = k l •'( 1.')k i.
I • • . Jc;.' ( t"!)k
. I
.

The connectio n matrix Mn(f3) is called a reparame terization matrix. As we can


see from the
formula, Mn{/3) is a lower triangula r matrix with m;;(/3) = /3L m; ({3) = 8; , m;
0 0 1 (/3) = {3;, i 2: 1,
and the remainin g entries in the subdiago nals are polynom ials in the /3;-s such
that /3; does not
appear in T"Tli;(/3) for j > i :

1 0 0 0
0 /31 0 0
0 f32 f3[
(7) Mn(f3 ) = 0 /Js 3/31/32 /3~

0 /3n-1 {3f-l 0
0 /3n fJi
So, an alternativ e definition of geometric continuit y is the following:

6
THEOREM 2 (GEOMETRIC CONTINUITY) Curves r(u) and s(v) are nth order geometric continuous
at uo and vo, if and only if there exists a reparameterization matrix M,.({J) such that

Dn(s)(vo ) = Mn(fJ)D,,(r)(uo).

The conditions in Definition 8 and Theorem 2 are equivalent. It can be shown [6) that the following
theorem provides another equivalent formulation:

THEOREM 3 (GEOMETRIC CONTINUITY) Curves r(u) and s(v) are nth order geometric continuous
at uo and vo, if and only if the corresponding arc-length parameterized curves r(t) and s(w) are
C" at s(w(vo)).
en-continuity is projectively invariant. Moreover, the reparameterization matrix is also pro-
jectively invariant. So, if two homogeneous curves in IRd+l are en,
the projected rational curves
in IRd are en with the same reparameterization matrix [37]. However, the e'"-continuity of the
homogeneous curves is not necessary for the rational curves to be en. The necessary and sufficient
conditions are as follows [48] .

THEOREM 4 (RATIONAL GEOMETRIC CONTINU ITY) Let r(u) and s(v) be two homogeneous curves
in JRd+ 1 . The associated rational curves R( u) and S(v) in !Rd are en u v
at 0 and 0 if and only if
the denominator of the rationals are non-zero and there exist a reparameterization matrix Mn(f3)
and an n-jet ( ao, ... , an) such that

where matrix An is defined in terms of Oi by Equation (4) .

2.4 Frenet frame continuity


This subsection t akes a differential geometry approach to continuity. All concepts from differential
geometry that are used here can be found in the text book on this subject by do Carma (22].
The direction of the tangent line is determined by the tangent vector, the normalized derivative
vector sC1l( v )/lis< 1 >(v)ll which has unit length. Two curves need not have the same derivative vector
in order to have the same tangent vector, as was illustrated in Figure 2. There is a particular
parameterization that gives a unit length derivative vector at every point, so t hat the derivat ive
and tangent vector are equal: the arc-length parameterization.
Let s(w) be an arc-length parameterized curve. The tangent vector t 1 is now

llt111 =i,
The normal curvature vector is defined as

t2(w) = tP>/"'1(w)
where 11:1(w) is a scalar such that llt2(w)ll = l; 1>.1(w) is called curvature.

Remark 2 The normal curvature vector is often called main or principal normal vector.

The binormal curvature vector, normal to t 1 and t 2 , is defined as

where 11:2(w) is a scalar such that 1it3(w) ll = l; K:2(w) is called torsion. Planar curves have zero
torsion.

Remark 3 The torsion is often in dicated by T( w).

7
s(v)

Figure 4: Frenet frame.

Curvat ure and torsion have an intuitiv e geomet rical meanin g:


it1(w) and -1t2(w ) a.re the an-
gular velociti es of t 1 ( w) and t 2 ( w). The plane spanne d by the
tangen t and the normal curvat ure
vector is called the osculat ing plane, see Figure 4.
The notions of tangen t, normal curvatu re and binorm al curvatu
re can be genera lized to so
called general ized curvatu res (37, 48}:

ti(w) == s<1 l(w)


ito(w) = 0
(8)
( )= tl >(w) + 11:;-1(w
1
)t;-1(w)
ti+l w ( )
"' w
i =1, ... , n - 1,
where x:;(w) is such that llti+l ( w )II = 1.
R emark 4 The general ized curvatu re vectors t; and scalars it; can
also be derived from s<il by the
Gram-S chmidt orthogo nalizati on process {40}.
Analog ous to the osculat ing plane, the linear space spanne d by
the first d -1 curvatu re vectors
is called an osculat ing linear space.

DEFINI TION 9 (FREiN'E T FRAME ) In !Rd, the Frenet frame


is defined as the first d curvatu re vectors
(t1(w), . .. , td(w)).

Remar k 5 The Frenet frame is also called Frenet- Serret or Serret-


Frenet frame, and in 3D also
Frenet trihedr on.
The moving Frenet frame as a functio n of w uniquely defines the
shape of the curve. So when the
tangen t, curvatu re and torsion vectors of a curve in 3D are given,
we are able to draw the curve,
see also Koende rink (53].
Note that the curve must be arc-len gth parame terized in the above
definiti on but the genera lized
curvatu re vectors and curvatu re scalars are intrinsi c propert ies of
the curve. That is, indepe ndent of
t he actual parame terizati on any curve possess es an a.re length
pa.ra.m eterizat ion and corresp onding
general ized curvatu res, so that we can speak of a Frenet frame
of an arbitra rily parame terized
curve.
Frenet frame continu ity of a curve in lR.4 can be defined as the
continu ity of the Frenet frame
{t 1{w), ... , t4(w)) as a whole (40}. A more general definiti on is
the followi ng (37, 48]:
DEFINI TION 10 (FRENE T FRAME CONTIN UITY) Two curves r(u) and s(v) are n -th order Frenet
frame continuous, n > 0, at uo and vo, if and only if the first n curvatu re vectors and scalar
curvatu res coincide.

8
Strictly speaking, in 'Frenet frame continuity' it is not the d-dimensional Frenet frame, but the
n generalized curvatures that must be continuous. Frenet frame continuity of order n , n > Ois
denoted Fn. F 0 and F- 1 can be used to indicate positional continuity and discontinuity.
A curve in IR.d that is Fd , is al.so Fn for n > d. So, Frenet frame continuity d istinguishes only
between d + 2 classes of curves: F - 1 , F 0 , ... , pd. In particular, a curve in 3-space that is F 3
continuous, is also Fn, n > 3, for example a F 2 planar curve in 3-space (it has .a zero torsion).
The Frenet frame at s(vo) can also be defined as the unique set of orthonorma] vectors t 1 , . . . , tn
satisfying
Dn(s)(vo) = M (s(vo), t1 , . . . , t 11 )T
where M is a lower triangular matrix with m;o = b;o, and a positive diagonal {26).
Frenet frame continuity can also be defined in matrix form [26] :

THEOREM 5 (FRENET FRAME CONTINUITY) Two curvesr(u) ands(v) aren-th orderFrenetframe


continuous, n > 0, at uo and v 0 , if and only if

where Nn = ( n;1) is a lower triangular matrix with n;o = b;o, n 11 > 0, and nii = nfi.

Thus the diagonal of Nn is the same as that for Mn(/3) , see Equation (7), but the n(n - 1)/2 non-
zero subdiagonal entries are entirely arbitrary. N is called the Frenet frame connection matrix. It
is immediately clear that Frenet frame continuity is a weaker restriction than geometric continuity.
If we relax the condition n;; = ni 1 and permit arbitrary non-zero values a long the diagonal, we
get continuity of the first n osculating linear spaces. By relaxing the condition that Nn is lower
triangular, we get even weaker forms of continuity [26j.
pn_continuity is projectively invariant. However, the Frenet frame connection matrix is not
projectively invariant. So, if two homogeneous curves in IR.d+l are F 11 , the projected rational
curves in lR.d are pn but generally with another Frenet frame connection matrix [13, 37]. However,
the pn_continuity of the homogeneous curves is not necessary for the rational curves to be pn.
The necessary and sufficient conditions are as follows [48).

THEOREM 6 (RATIONAL FRENET FRAME CONTl!NUITY) Let r(u) and s(v) be two homogeneous
curves in /Rd+t. The associated rational curves R(u) and S(v) in !Rd are Fn at uo and vo if and
only if the denominator of the rationals are non-zero and there exist a Frenet frame connection
matrix N and an n-jet (oo, .. . , on) such that Dn(s)(vo) = AnNnDn(r)(uo), where matrix An is
defined in terms of a; by Equation (4).

Continuity of tangent line and curvature were a lready used at an early stage (33, 69, 10, 58, 59],
but the generalization h<\.S only been carried out recently [26, 48].

2. 5 C o mparing en and Fn
an and pn continuity agree for n = 1 and n = 2, but do not agree for n > 2. For n ~ 3, pn
continuity does not insure en-continuity of the corresponding arc-length parameterized curves. pn
is more general than an continuity, that is, there are curves that are Frenet frame continuous, but
do ruot satisfy the ,B-constraints, and so do not possess a regular enparameteriiation.
Frenet frame continuity discriminates only d + 2 classes but geometric continuity distinguishes
between an infinite number of classes: G 11 , n = - 1, 0, 1, . . . . Two planar curves in 3-space (which
have zero torsion), can meet with F 3 -continuity, while their derivatives of normal curvature it~ ( w)
are not equal.
Because a" and F"' agree for n = 1 and n = 2, the terms geometric, visual and Frenet frame
continuity are not used in a consistent way in the literature. The way we have used them until now is
mostly used in the computer graphics community. However, sometimes geometric continuity refers
to Frenet frame continuity, and visual continuity to the ,B-constraints [64]. Sometimes geometric
continuity is used in a broad sense to mean both 'arc length GC' and 'Frenet frame GC' [40). An

9
Figure 5: The 1-tangen t surface t 1 (u,v)(s) of a non-pla nar curve.

even more general notion of geometr ic geometr y is the existence of an arbitrar


y connect ion matrix
[37}, while phrases like 'GC in the sense of reparam eterizati on' and 'Frenet
frame GC' are used to
be specific. Adding to the confusion, the term 'geometric spline' is used for
a G 2 spline specific ally.
The meaning of ',8-conti nuity' [36] and 'algebraic continui ty' [12] should
be clear; it is also called
'contact of order n ' especial ly by German authors [34, 14, 64].

2-6 T angen t surfac e contin uity


This subsecti on is about the classifica tion of Frenet frame continuo us
curves into projecti vely
invarian t classes, develope d by Pottman n [64]. It i$ based on geometr
ic continu ity of so-calle d
ruled tangent surfaces , so that notions of continui ty of surfaces, tre ated in
Section 3, are used.
Ruled tangent surfaces a.re special ruled surfaces. A ruled surface in 3-space
is defined as
(9) r(v, w) = (1 - w)si(v) + ws2(v).
The curves s 1 and s2 are joined by a family of straight lines called rulings
perform ing a linear
interpol ation between s 1 and s 2 .

Remark 6 Rulings are also called generato rs, s and s are called directric
1 2 es.
We can write Equatio n (9) as s(v,w) = s 1 (v)-w(s (v)-s (v)) where s (v)-s
1 2 1 2 (v) are directio n
vectors of the r ulings. This can be generalized to a (k +I)-dim ensiona l ruled
surface in ~space as
follows (w; are separate variables, not fixed values of one variable) :

k
(10) rlt(v,w1 , ... ,w.,) = s(v) + L w;g;(v),
i=l
where 91 ( v), ... , 91t ( v) are linearly indepen dent, forming a basis of t he k-dimen
sional ruler at each
value of v.
We obtain a special ruled surface if we set g;(v) = s<i>(v). If sCl>(v), ...
, s<">(v) are linearly
indepen dent, they span k-dimen sional osculating spaces. The resultin g ruled
surface is called the
t-tanJren t surface of s and denoted t"(s):

k
fll) t"(s)(v,w 1, ... ,w1e)= s(v)+ L: w;s<'l(v ).
i=l
See F igure 5 for a !-tangent surface.

10
THEOREM 7 (FRENET FRAME CONTINUITY) Two curves r(u) and s(v) are n·th order Frenet fram e
continuous, n > 0, at uo and Vo, if and only if their k -tangent surfaces are all G 2 at uo and v for
0
k=O, ... ,n-2.
Projective transformation s map the k-tangent surface of a homogeneous curve s(v) onto the
k-tangent surface of the corresponding rational curve S(v). Since G 2 is projectively invariant, it is
clear from Theorem 7 that pn is also projectively invariant, something that we already know from
Section 2.4.
By Theorem 7, pn.continuity is a classification based on k-tangent surfaces and 0 2-continuity.
This classification can be generalized as follows:

DEFINITION 11 (TANGENT SURFACE CONTINUITY CHARACTERIST IC) Curves r and s possess tan-
gent surface continuity characteristic [(O, n 0)( 1, n 1) ... (k, nk)] at uo and vo if and only if the i-
tangent surfaces ti(r) and ti(s) are en,
for i = 0, ... ' k, at uo and vo.
The continuity constraints on a k-tangent surfaces only make sense if d ~ k + 2. In particular in
IR3 we have only characteristics of the form [(O, n 0 )(1, ni)), where the highest dimensional tangent
surface involved is the I-tangent surface, illustrated in Figure 5.
The tangent surface continuity characteristic is projectively invariant for the same reason
as pn is projectively invariant. By Theorem 7, pn.continuity corresponds to the characteristic
[(0, 2)(1, 2) ... (n - 2, 2)].

DEFINITION 12 (TANGENT SURFACE CONTINUITY) A curve with characteristic [(O, n - 2)(1, n -


1)(2, n - 2) .. . (n, O)] is called n-th order tangent surface continuous.
Tangent surface continuity is denoted or rn rcn.
The tangent surface continuity characteristic of a curve is not unique. By definition of the
tangent surface, G 0 -continuity of the (k + 1)-tangent surface implies G 1 -continuity of the k-tangent
surface. So, rn
requires characteristic [(0, n - 2)(1, n -1)(2, n - 2) ... (n, O)] and this is equivalent
to [(O, n - 2)(1, n - 1)(2, n - 2) . .. (n - 1, 1)].
Like Gn and Fn, rn.continuity can be expressed with a connection matrix. The following
theorem provides the parameters that appear in the matrix:

THEOREM 8 (TANGENT SUR.FACE CONTINUITY) Two curves r(u) and s(v) that are cn- 2 at UQ
and vo are rn there, if a.nd only if
s<n-1) = r<n-1) + V1 r(2) + v2r(l)
s (n) = r(n) + (n - l)v1r( 3 ) + /.13r<2 > + /.14r(l)
a.t t£o a.nd vo for Vi E JR .
For n ~ 4 the connection matrix M (Tn) is given by
1 0 0 0
0 1 0 0
0 0 1

(12) M(Tn) = Mn(f3)


0 0 0
0 1.12 V1 0 0
0 1.14 v3 1.11(n- l )
l 0 0
where v 1 , .•. , v 4 are given by Theorem 8. The connection matrices of T 3 and T 2
continuity do not
fit in this scheme but are as follows:

(13) M(~) = (j 0

a1a~
0
00 ) ,

11
Figure 6: Mapping from a paramete r domain to a surface.

(14)
~)·
Q3

Since the tangent surface continuit y character istic is projectiv ely invariant , Tn-conti
nuity is also
projectiv ely invariant . Therefore , if two homogen eous curves are Tn-conti nuous, the
correspo nding
rational curves are also Tn-contin uous. However, a result analogou s to Theorem 6
that would state
the exact condition s on two homogen eous curves to let the rational curves be Tn
has not been
derived.

3 Conti nuity of surfac es


3.1 Fundam entals
In this section we consider surfaces that are topologic ally two-dime nsional objects,
in an ambient
space lR.d of arbitrary dimensio n d larger than two, except where explicitly stated
otherwis e.
A functiona l surface is a scalar function s : IR2 -+JR.. A parametr ic surface .s is defined
compo-
nentwise , each coordina te compone nt being a function of two paramete rs (bivariate
functions). The
paramete rs are allowed to range over some arbitraril y shaped region D E JR.2 : s(
v, w) : D -+ JR.d.
Thus in particula r, the paramete r domain need not be rectangu lar, see Figure 6. In
its most general
form, the paramete r domain may have an arbitrary topology with disconne cted
pieces and holes.
Such a trimmed domain correspon ds to a trimmed surface, freq_uently resulting from
intersect ions
with other curved surfaces, for example in CSG-mod eling. The domain over which
the surface is
defined is then modified, while the coordina te compone nt functions are left unchange
d [16].
A rational surface has rational compone nts: s(v,w) = {f1(v, w )/g(v,w) , ... , Jd(v,
w)/g(v, w))T.
The homogeo neous surface S(v,w) associate d with the projected surface s(v,w)
is S(v,w) =
(f 1 (v, w), ... , fd(v, w), g(v, w))T. In the following , all surfaces can also be homogen eous
surfaces,
but a rational surface is always denoted explicitly .
A polynomi al surface of total degree n has t he following form:

s(v, w) = L a,;viuJ.
i+iSn
A polynomi al su.rface of coordinate degree (m, n) is of the form

m n
s(v,w) = LL>•iv'u?.
i=O )=0

12
A piecewise polynomial surface s(v , w) is defined patch by patch Th d . .
· · cl · · .
t h en part1t1one mto sub-domains, which can be t ransformed so as to · e parameter omarn is
. . . . prov1·d e 1o ca1 parameters •Or r
each patch. A spline surface 1s a p1ecew1se polynomial surface.
The ith partial derivative with respect to v and the 1'th with respect t
· ow ·is d enot~d s ! • ·J l ( w ) : t"
( iJ} - ()i+i s
s (v , w) - . . (v , w )
8 v •0 wJ
Note that s (i ,fl(v, w ) is a .vect or. To avoid potent ial problems wit h the pa · t"ion o r a
rame t er1za
surface s (v, w), we assume. m the rest of the paper that the first partial der·
i vat· e
( 01 ) . . IV S S
tl.Ol(
v , w ) an d
s • (v, w) exist, and are linearly independent. The surface and its parameterizat ion are then said
to be regular.
A partial derivat ive is a special case of a directional der ivative.

J?EFINIT_ION _13 ( DIRECTION~L DERIVATIVE) T he direction al derivative at a surface points(vo. wo)


in the direction d = (d v, d.,,) in the parameter space, is

...., ( ) _ . s(vo
1tm · + hd,, ,wo + hdw) - s(v0 , wo)
VdS VQ , W Q - -- -
h-0 h
The partial d erivative are obtained in t he direction of the parameter space axes: 'V(l.O)s (v , wo)
0 =
s<1•0 >(vo, wo), and V co,1 )s (vo, wo) = s<0 •1>(vo, wo).

Remark 7 The symbol "'V" is called nabla. The directional derivative 'Vd s is also called the
covariant derivative of s by d.

Remark 8 Surface s is defined to be weakly or Gateaux differentiable at (v0 , w 0 ), if and only if


the mapping d ~ 'V ds(vo, wo) is linear and continuous. s is d efined to be strongly or Frechet
differentiable, if and only ifs is Gateaux differentiable, and the mapping (v0 ,w0 ) ,_ V's (v0 , w 0 ) is
continuous.
We ar e interested in the continuity of spline surfaces r(t , u ) and s(v, w) , in particular along a
common curve or edge.

3.2 Parametric continuity


D EFINITION 14 ( PARAMET RIC CONTINUITY) Two surfaces r (t , u ) and s ( v , w ) a re Cn·continuo us
at (t o, uo) and ( vo , wo), if and only if r (i,il(to, u 0 ) = s<i.il(v0 , wo), i + j = 0, .. . , n.
The surfaces are C " along a common curve if they are en
at each point on that curve. c- 1 denotes
positional discontinuity.
Note t hat two surfaces need not have the same first order partial derivatives in order to have
the same tangent plane . As with curves the derivatives depend on the parameterization while the
tangent plane does not. Moreover, on closed surfaces singularities occur where the derivative of the
surface is not defined. As an example see Figure 7, showing a closed piecewise triangular surface
s, together with a global parameterization and a part ial local parameterization. Corresponding
points in the parameter domain and the surface are indicated; the global domain is ' folded' so as to
join the Di to point D on the surface. Taking the derivative at s ( A) in the directions D1 - A and
D2 - A in the global p arameterization, it follows from Definition 13 that 'V o,-As(A) :/= V' D,- As(A)
(in fact if D 1 -A= A- D 2 t hen 'Vv, -As(A) = - 'VvrAs(A), see also Herron [45]). By contrast,
the derivative at the closed surface requires V'o, -As( A ) = 'VD 2 - As(A). One might think that _a
local parameterization solves the problem, but a parameterization of patch ( A , B , C) as shown in
the Figure 7 , determine 'Va-As( A ) and 'Vc- As( A ) which imply the parameterization for patch
( A, B , D ) as shown, which in t urn determines V D-As( A ). But the param_eterization of ( A, B '. C )
also implies the parameterization for patch (A , C , D) as shown. The result~ng _'V D-As(A)_ co~fhc~s
with the previous one. Thus, in both the global and the local parametenzat1on the der1vat1ve is

13
)
cY
I
I
/
/

B1\b D1\ b
I "\ I '\
/
I
__ _ \
~
/
L--- ~
'\

A C A C

Figure 7: Closed surface (upper left) with a global parameteriz ation (upper right), and a partial
local parameteriza tion (lower row).

not properly defined, while the tangent plane may still be coincident at common patch boundaries.

As for curves, en-continuit y of surfaces is projectively invariant, but en-continui ty of the


homogeneou s surface is not necessary for en-continuit y of the correspondi ng rational surface.
However, a result analogous to Theorem 1 has not been derived for surfaces.
Again we can take an algebraic and a differential geometry approach in order to base the notion
of continuity on intrinsic aspects of the surface.

3.3 Geometri c continuity


Analogous to curves, geometric continuity can be defined as follows {20]:

DEFINITION 15 (GEOMETRIC CONTINUITY ) Two surfaces r(t , u) and s(v, w) a.re On-continuo us
at (to, uo) and (1.10, wo) if and only if there exist a. repara.meterization t = t(t, ii), and u = u(i, u),
such that r (t, u) = r(t(t, u), u(t, ii)) and s(v, w) are C"-continuo us at r (to, u 0 ) and s(vo, wo ).
Note that the reparameteri zation may be different at another point s('lit 1 t111 ), otherwise we would
again run into trouble with closed surfaces.
Since this definition is non-construc tive, we apply the bivariate chain and product rule to the
reparameter ization, and observe that ; (k,l)(f, u) can be written in terms of o'+i r (t, u)/ ot'lf1i,
8'+i t(t, u) / oi'fJU.i , and oi+iu(t, u)/ot'ou/, i + j = k + l, and i + j = 1, ... , n. For example
or or lJt or OU
oi = at ai + au ai ·
Letting f3!,; denote {}'+it/o'if}iv . at (t0 ,u0 ), and f3~; the analogue for u(t,u), we get the {3-
constraints for surfaces:

14
(15a) s (O,O) == r(O,O)
(15b) 8 ( 1,0) = {31,0
t r (l ,0) + au r (O,l )
>-'l,0
(15c) 8 (0, l ) == {3t0,1 r(l,O) + pu0,1 r (O,l)
(15d ) s (2,0) = C.BL0)2r(2,o) + 2f3f,of3i,or (1,1) + (f3i,0)2r(0,2) + /3~,or(l,O) + /32,or(0,1)
2 0 + (/3Lof30,1 + ..B6,1f3i,o)r <1•1> + f3i,o.f30,1r0•2 + f3L1r(l,O) + ./3i,1r(O,l )
(15e) s (l,l) == .8Lo.86,1r< • >
{15f) 8 (0,2) == ({36,i )2r(2,0) + 2 f36,i/3o,t r (l ,l ) + (/3(),i)2r(o,2) + f3br(l ,0) + f3(i, 2 r (O,l)

where i~ is understood that t he derivatives of rand s are taken at (t(t0 , u0), u(t0 , uo)} and s(v0 , wo )
respectively. Note that for continuity along a whole curve t hese equations must hold for all points
along the curve but that the {3-s need not be constant.
This set of equations is not put int o matrix form in a straightforward manner. The {3-s provide
a~. = o, i I~ 1
n ( n +. 3) shape handles for an-continuity. Of course if {31' •0 = {30" ' 1 = 1 and {3!t.J. = i-'111
and J =/= 0 amounts to parametric continuity.
T he reparamete rization approach is easily extended to k-variate surfaces in IR d, d > k. Geo-
metr ic continuity of k-dimensional surfaces is applied in Section 2.6 to k-tangent surfaces.
As for curves, an-continuity of surfaces is preserved under arbitrary en diffeomorphisms [64]
(en mappings that have a en inverse), particularly under projective transformations. However, a
result analogous t o Theorem 4 that would state the exact conditions on a homogeneous surface so
as to let the rational surface be an
has not been derived.

3.4 Diffe r ential geom etr y approach


Just as we considered the tangent line of a curve we now consider the tangent plane of a surface.
The tangent plane at s(v 0 , w 0 ) is spanned by the vectors s<1·0 >(vo, wo) and s(O.ll(v0 , w 0 ). Equiv-
alently, the tangent plane is normal to the surface normal vector

(16)

where 'x' denotes the vector or cross product. The tangent planes at r(to,uo) and s(vo,wo)
0 1
coincide if and o nly if r <100>(t 0 , uo), r <0 •1>(to, uo), s <0 •1 >(vo, wo), and s< • >(vo, wo) are coplanar, that
is, if Equations (15b) and {15c) hold.

THEOREM 9 (GEOMETRIC CONTINUITY ) Two surfaces are first order geometric continuous at a
common point if and only if their normal vectors coincide.
Second order geometric contin uity is based on curvature. For any direction d in the tangent
plane at s(v0 , w 0 ), the plane through d and N(vo, wo) intersects s(v, w ) in a curve. The normal
curvature of this curve is the normal cu rvature of the surface in t he direction of d: Kd(vo, wo). Unless
K.d( v , w ) is the same in all directions, there are two direct ions d1 and d 2 in which Kd( vo, wo) takes
0 0
the maximum and minimum values: the principal curvatures 11:1(110 1 wo) and 11:2(vo, wo) respect ively.

Remark 9 The first curvature at s (v0 , w o) is defined as tt1(vo, wo)+ 11:2(vo, wo). The Gauss or second
curvature is tt1 (v0 ,w0 )tt2 (v0 ,w0 ). The mean normal curvature is (11:1 (vo,wo) + 1t2(vo,wo))/2. The
amplitude of the normal curvature is (tt1(vo,wo) - 1t2(vo,wo))/2.
Second order geometric continuity can be defined in terms of the so called Dupin indicat rix
based on the principal curvatures.

15
DEFINITI ON 16 (DU PIN INDICATR IX) Taking the principal directi ons (d1, d2 } as coordina te
axes,
the Dupin indicatrix is the set of points ( x1 , x2 ) defined by the conic section:

K1xi + K2X~ = 1 if K1K2 > 0,


(17) K 1Xi + K2X~ = ±1 if KtK2 < 0,
KtXi =1 if K2 = 0.
So, the Dupin indicatrix at a point s(v , w 0 ) is a conic lying in the tangent plane
0 at that point. If
x: 1 and x: 2 have the same sign, the Dupin indicatrix is an ellipse. If 11;1 and K2
have opposite signs,
it consists of two hyperbol as, if x:1 ::/= 0 and 11:2 = 0, it degenera tes into a pair of
parallel lines, and
if 11: 1 = K 2 = O it is void. The Dupin indicatrix fully character izes the curvatur e
a t s(vo, wo).
Remark JO Point s (v0 , w0 ) is called a synclastic or elliptic point if K K2 > 0, an
1 anticlast ic or
hyperbol ic point if 11;1 K 2 < 0, a parabolic point if K 1 =/: 0 and K2 = 0, and
a planar point if
K;1 = 11:2 = 0.

THEOREM 10 ( GEOMET RIC CONTIN UIT Y) T wo surfaces are secon d order geometri c continuo us if
and only if their Dupin indicatrices coincide.
Arc length doesn't apply to a surface as a whole, but of course it does apply to
curves on the
surface. A normaliz ed paramete rization similar to arc length parametr ization for
curves, is based
on the notion of a line of curvature :

DEFINITI ON 1 7 ( L I NE OF CURVATU RE) A line of curvature on a surface is a regular curve such


that at all points on the curve the tangent vector has a principal direction.
The following surface paramete rization is of interest: lines of constant paramete
r value are lines
of clJrvatur e and are arc length paramete rized. If two surfaces are paramete rized
in that way, and
=
they are C" (n 1,2), then they are also G". The reverse is only conjectur ed
(76):
CONJECT URE 1 Two surfaces r(t, u) an d s(v, w) are on-conti nuous,
n = 1, 2, at (to, uo) and
(vo, wo) if the corresponding surfaces r(i', ii) and s(ii, w) whose lines of constant
paramete r value
are lines of curvature th at are arc length parameterized, satisfy anr / at" = ans/ ov"
and 8 " r / ou" =
ans/ow" , n = 1, 2, at cto, ii.o) and (iio, wo).
Note that for n = 2 the condition on the derivativ es does not amount to C 2 -continui
ty, since the
mixed partial derivativ es 2 a r/ aiau and 2 a s/a:vaw
need not agree.
For order higher than two there seems to be no notion of continuit y based of different
ial geom-
etry.
A particula r but frequentl y used paramete rization is that two patches r and
s agree along
a constant value of one paramete r, for example r(t0 , u) =
s(v, w 0 ). The patches have coincide nt
tangent planes at every point of their common curve if the three vectors s <O,l ) ( v
0 , w 0 ), r Cl ,O)(t0 , uo ),
and r <0 -1>(to, uo) are coplanar, see Figure 8. That is the case, if

( 18)

where of course uo and wo are such that r(to,uo) = s(v , w ), and a(u.) does not
0 0 vanish. Indeed,
along the common curve r(to,u) = s(v,w), the {3-s in Equation (15b) depend
only on u , so that
Equation ( 15b) reduces to Equation (18) . For a smooth transitio n from one
surface into t h e
other, it is required that a {u ) < 0, otherwise a sharp edge results. An alternati
ve formulat ion to
Equation (18) is the following:

o(v )s(l,O)(vo, Wo ) = a:(u)r (l,O)( to, UO ) + 1'(u)s(O,l )(to, UO),


where a(u) and 6(v) do not vanish. Special choices of a(u), -y(u), and 6(v) give specia.l
construc tions
of tangent plane continuit y; see Du & Schmit t (25) for a review.

16
r(O, l)
r(t,u)
u s ('O, 1)

s(v,w)

Figure 8: A particular parameterization such that r(t0 , u) = s(v, w 0 ).

Kahmann [50] further shows that the patches have coincident Dupin indicatrices if
(19) 8 (0,2) = o:2r(0,2) + 2a-yr(l ,l) + -y2r(2,0) + er(l,O) + (r(O ,l),
where e and ( are, like a and -y, functions of u. Compare Equations (19) and (15f).
Continuity of tangent plane and Dupin indicatrix were discussed in (70, 74, 50).
For general rational surfaces no continuity conditions have been derived, but for Bezier surfaces
G 1 conditions have been elaborated (56, 21].

3.5 Ruled tangent surface continuity


For curves we used k-dimensional osculating linear spaces as the rulings that are swept along a
curve so as to generate a k + 1-dimensional ruled tangent surfaice. For surfaces, we can use k -
dimensional osculating linear spaces as rulings that are swept along the surface so as to form a
k + 2-dimensional ruled tangent surface which we can subject to continuity const raints. However,
in 3-space and 4-space any k + 2-tangent surface is trivially continuous. This is similar to planar
curves, whose k + !-tangent surfaces are also trivially continuous.
Geometric continuity, which is based on reparameterization, is properly defined in all these
cases.

4 Modeling
Curve and surface design is typically done in a piecewise way. After all the segments have been
defined, they must be properly put together to construct a 'smooth' curve or surface.
If a curve is Ck then it is also Gk, but the reverse is not true. However, Gk curves are not less
smooth than Ck ones. A Gk curve can be reparameterized without altering its shape so that it will
be Ck. Thus geometric continuity is a relaxation of parameterization but not of smoothness. This
relaxation results in several degrees of freedom, for example the ,6-parameters. Such parameters
are called shape parameters or shape handles. They can be used to modify the shape without
destroying the imposed continuity conditions. T hese shape handles have proved to be useful in
interactive design of curves and surfaces.

4.1 Curve rnodeling


A particular G 2 (curvature continuous) cubic spline is the v-spline, introduced in 1974 by Nielson
[59]. The 11-spline is expressed in a global parameter Vmin :S v :S Vm.a:z:, with respect to which it is
C 1 , and interpolates given data points at the knots. Considering two segments r(v), v;-1 :S v :S 'Vi
and s( v), Vi ::; v ::; tli+ 1 , the 11-spline satisfies
(20a) s(v;) = r(v;),
(20b) s<1 l(v;) = r< 1 >(v;),
(20c) s( 2>(Vi) = r< 2 l (v;) + v ; r (l) ( vi).

17
The breakpoints (20a) are prescribed. The tangent vectors (20b) are uniquely determined by
the interpolation requirement. The Vi are constant shape parameters, affecting how tight the
spline runs through the breakpoints; they are t h·erefore called tension parameters. These shape
pa:rameters can be used to alter the shape of the curve.
The 1-spline is a G 2 (curvature continuous) cubic spline in a special formulation involving
control points of both the B-spline and the Bezier curve representation at the same time, developed
by Bohm [11]. Like the v-spline, the 1-spline is expressed in a global parameter Vmin:::; v :::; Vma.:z: ,
with respect to which it is Cl. At the knots Vi there are weight factors 'Yi defined in terms of ratios
of distances between control points. The relation between 'Yi and Vi is given by

v;=2 ( 1 + 1 ) ( -1- )
v; - Vi-1 Vi+l - Vi 'Yi+ 1

If the knot sequence is rescaled such that each interval has unit length, the curve becomes G 1
instead of C 1' with the f31 from Equation (5) defined at knot Vi as f31 ,i = (v;+2 -V; +i)/(vi+l -v.;).
The resulting spline is the {3-spline. Note that the {3-spline is only one particular spline among all
splines satisfying Equation (5). In the formulation of the ,8-spline, the ,82,i are equivalent to v; .
Setting all f3t,i = /31 and /32,; = (32 yields the /3-spline as originally introduced by Barsky (3, 4].
The r-spline is a quintic F 3 (torsion) continuous spline, introduced by Hagen (41] . The r-spline
is F 3 but generally not G 3 , while the /3-, 1-, and v-spline are both G 2 and F 2 since G 2 is equivalent
to F 2 . We do not need a curve of degree five for torsion continuity: a quartic F 3 spline is given
by Bohm [12].
A Catmull-Rom spline [17] is defined as
k
(21) s(v) =L B;(v)r;(v),

where r;( v) are curves with the same control points; they have in general different local supports
and interpolate t he control points that correspond to t heir supports. The blending functions B i
do not only weight the control points but the entire curves.
When r; and B; are parametrically continuous, s is also parametrically continuous. Moreover,
when r; and B; are all an for the same set of /3-values (/30 ,/31 , ... ,/3n), s is also an with these
,8-values. However, if r; and B; are all pn for the same connection matrix N from Equation (5),
the Catmul-Rom spline need not be pn for the same connection matrix. Whether s is Frenet frame
cont inuous for another connection matrix is still an open problem [36] .

4.'2 Tensor product patches


2
A function f on IR. defined as f(v , w) = g(v)h(w) for all v,w E IR whith g and h univariate
functions, is called a tensor product of g and h [18].

Remark 11 The tensor product of g and his often denoted g ®h.

Analogous to Equation (1), we can form a linear combination of tensor product functions:

f(v,w) = l:c;g;(v)h;(w) .
A frequently used form of a tensor product surface is (18, 15]:

k I
(22) s(v, w) =L :La;,jBf(v)Bj (w),
i=O j=O

compare to Equati·on (2). For a constant vo, s(vo, w) is a curve on the surface depending on w only;
a constant value for w gives a curve in v. Tensor product surfaces are frequently used because of

18
Figure 9: Tensor product patch, and rectangular grid of patches.

their simplicity: many operations such as subdivision or derivation result from the corresponding
univariate operations in a straightforward manner.
The projection of a tensor product surface is often written in the following form :

le l
E E ai,jBf(v)BJ(w)
(23) S( )= ...,
•== ,..-
O_i ..,...
==O_ _ __ __
v,w le l ,
E E Wi,jBf(v)BJ(w)
i=Oj=O

where each a;,j is still a vector but the w;,j are scalar weight factors. It is a common misconception
to call the surface of Equation (23) itself a tensor product [31]. In the following we discuss only
tensor product surfaces (Equation (22)), and not the project ion thereof.
If Bfev) and BJ{w) are parametrically continuous, t hen so is s(v, w). But, if the blending
functions are only geometrically continuous, the tensor product surface need not be geometrically
continuous. However, a sufficient condition is the following: if all the Bf( v) are on at Vo for
the same set of ,8-values, and all Bj(w) for another set of /J-values at wo, then s(vo, wo) is also
on-continuous [36] .
When s 1 (v) and s 2 (w) are splines of multiple segments, we get a rectangular grid or mesh of
patches, see Figure 9. When the curves are single segments, the tensor product is a single patch.
The patches can be independently parameterized, and can placed in an arbitrary mosaic. Then
the number of patches meeting at the corners of each patch is not restricted to four, as in the case
of a rectangular mesh.
A rectangular mesh is not suitable for modeling all shapes. For example a sphere-like object can
be covered by six rectangular patches but cannot be covered with a rectangular mesh of patches
without degenerate patches. Degenerate rectangular patches have an edge of zero length, collapsing
to a point. At that point the surface normal is not defined which causes problems t o many standard
intersection and shading algorithms. In shapes where n-sided patches naturally arise (n :j: 4) they
can be modeled by n rectangular patches meeting at a common point, see Figure 10 for an example
with a triangular patch, the 'suitcase corner', and a pentagonal patch.
So, for a modeling system based on rectangular patches to be general it must be able to handle
an arbitrary mosaic of patches, allowing n patches the meet at a corner. For 0 1 -continuity around
such a corner, all adjacent patches must satisfy Equation ( 18) . For particular types of surfaces
this poses constraints on its definition, for example on the control points in Equation (22) .
In order to find constraints on certain control points we can differentiate Equation (18) [71, 75,
25]:

(24)

19
Figure 10: Non-rectangular meshes with 3- and 5-sided patch, subdivided into 3 and 5 rectangular
patches meeting at a common corner.

If we have n patches at a corner numbered as in Figure 11, and evaluate Equation (24) at the
corner we get the following set of equations:

(25) (1 ,1)
Si+l =
( l ,l )
Ct; S;
+ Ck;( 1) S (1; ,0) + '"fiS (0,2
;
) + (1) (0 ,1)
'Yi S;

or equivalently

1 0 0 (1 ,1)
S1
(1,1)
S2
[a'"l ,o.o)
1 + 11 ,C'"'
1 l •'°"'
+ ..i» l

(26) 0 =
(1,1 )
0 -an-1 1 s ,._1
(1,1 )
(1) ( 1,0)
a,. Sn
+ /nSn(0 ,2 ) + '"fn(1) Sn(0,1)
1 0 0 - a ,. Sn

The determinant of the first matrix is given by


n

IT - a; - (-1r.
i=l

Recall that the a; are negative, so that the determinant is positive if n is odd. The matrix is singular
if n is even and TI -a; = 1. In that case Equation (25) cannot be used to derive constraints on
control points or other terms in the patch definition. It does not mean that Equation (25) is
necessarily inconsistent, since the equations can as well be dependent, allowing infinitely many
solutions.
Triangular patches provide an alternative to the ubiquitous tensor product schemes. Espe-
cially Bezier triangles{29), interpolating prescribed vertices, have gained mucll attention. Trans-
finite triangular schemes, interpolating prescribed boundaries, have also been developed for G 1 -
continuity[60] and G2 -continuity[42] . General n-sided patches are typically subdivided into rect-
angular patches(49), see also Section 4.2.
Both rectangular and triangular Bezier schemes have gained much attention for developing
continuity conditions because their control points are geometrically meaningful. G 1 -continuity
conditions on the Bezier control points have been derived(27, 63 , 55, 23, 24, 21, 61) but not all of
these apply ton patches around a common vertex. G2 -continuity conditions have been elaborated
too(50, 19].
Also for rational Bezier surfaces G 1 conditions are derived [56, 21].

5 Visual aspects of continuity


Rendering of curves and surfaces is usually limited to curves in the plane or 3-space and sur-
faces in 3-space, although higher dimensional applications such as scientific visualizat ion (44] and
mult ivariate analysis (1] for which higher order continuity apply are becoming important.
Manning [58] described geometric continuity conditions for curves with application to insole
shape design. G 2 -continuity seems to be sufficient for a smooth appearance of the curve. A

20
u
t

........
--
Figure 11: n patches meeting at a corner.

discontinuity in the curvature can be detected by a practised eye, but it seems that a discontinuity
in the torsion is not visible.
The visual aspects of surfaces are much more complicated, since these depend on the surface
contour, texture, contrast, and illumination, see also Koenderink(53]. In this paper I survey some
aspects of illumination. First, the two following subsections treat simple concepts of illumina-
tion models and shading algorithms. Then they are related to surface continuity in Section 5.3.
Much more about illumination models and shading algorithms can be found in the text books by
Glassner(35] and Hall(43].

5.1 Illumination models


Many illumination models t hat are used in computer graphics for the rendering of surfaces depend
on the surface normal N(vo, wo) defined by Equation (16). Local illumination models describe
how an imaginary ray of light from a point light source in the direction L with intensity lugh.t
is scattered from an idealized surface. Diffuse reflection scatters light in all directions with equal
intensity, which is proportional to the cosine of the angle B between N and L, see Figure 12. The
Lambert or diffuse illumination equation, based on Lambert's cosine law is
(27)
where .kd is the fraction of diffuse light reflected which depends on the surface material and is
mostly kept constant, and the vectors are normalized. Note that N varies along the surface; L also
varies, and is only constant when the light source is at infinity.
A mirror reflects light from direction L only in the direction R , see Figure 12. Glossy surfaces
exhibit specular reflection by scattering light unequally in different directions. The empirical

* N
R

Figure 12: Point light source reflection geometry.

21
model for the specular reflection of glossy surfaces described by Phong [62) assumes that maximum
specular reflection occurs when the angle 4> between Rand the eye vector E is zero, and falls off
sharply as ef> increases. This falloff is modeled by cosn ef> where n is the specular reflection exponent
depending on t he surface material. Phong combines the diffuse and specular reflection giving

(28)
lpirel = f1ight(kdcos8 + ks cos" ef>)
= f1;9 hi(kdN · L + k~(R · E)n)

where k, is the fraction of speculac light reflected which depends on the surface material and is
mostly kept constant, and the vectors are normalized. Note that R varies along the surface. E
also varies, except when the eye is at infinity.
The empirical model described by Phong has been improved and enhanced in several ways, so
that local reflection models produce realistic looking objects. However, inter-object illumination
effects such as one object casting a shadow on another or reflecting light towards another cannot be
captured by only a ray of light and a single surface. These global effects require other algorithms. In
1980, Whitted (77] introduced an improved illumination model that captures diffuse and specular
reflection as well as t ransmission through transparent objects, and inter-object illumination by
specular reflection. Anot her new algorithm, radiosity, was introduced in computer graphics in
1984 by Goral et al. [38], to model the energy balance for perfectly diffuse surfaces. Radiosity
gives softer shadowing and inter-object illumination by diffuse reflection.
However, in relation to surface continuity the prime test case is the reflection of a linear source
of light. Specular reflection of a linear light source gives a reflection curve on t he surface. Reflection
curves are used in for example car industry to test surface smoothness(51]. In Section 5.3 is shown
why reflection curves are interesting.
Linear light sources can be modeled as follows:

(29)
l pizel = J I1ig1i.t(kd.N · L + k5(R · Et)dl

= l1ightkd / N · L dl + f light ka J
(R · £)n dl ,

where t he integral is taken over the length of the linear light, and t he intensity ! 1i gM is assumed
to be constant along the line.

5.2 Shading algorithms


A polygonal c 0 surface has a constant normal at each facet so that diffuse reflect ion is constant if
the light source is at infinity. Rendering a polygonal surface in this way is called fiat or constant
shading.
Any Glc , k ~ 1 surface can be rendered by calculating the normal at every point on the surface
for use in any illumination model, but this is computationally expensive. The surface is often
c
approximated by a polygonal 0 surface obtained by adaptive subdivision of patches into several
patches that together have the same shape as the parent pat ch, until the polygonal approximation
of the patch is within a certain error bound from the real surface. More general sha.ding algorithms
can handle patches bounded by curved segments (54]. The approximating surface can be displayed
by fiat shading but this gives clear intensity discontinuities.
The surface can also be rendered by interpolation algorithms. The Gouraud shading algorithm
requires that the normal is known at each vertex of the polygonal mesh. Vertex intensit ies can be
found by any desired illumination model, but originally Gouraud (39] adopted a Larnbertian diffuse
illumination model like Equation (27). The Gouraud shading algorithm is a scan line method: each
polygon is shaded by linear interpolation of vertex intensities along each edge and then between
edges along each scan line. Gouraud shading is implemented in hardware or firmware in many
graphics workstations.
The Phong shading algorithm is also a scan line method. It interpolates the surface normal, eye,
light, and reflection vectors, instead of the light intensity. Again the vectors at the vertices must be

22
--~

'7-----
Figure 13: Cause of Mach band effect: dashed line is true intensity with dicontinuous derivative,
solid line is the perceived intensity.

known. These vectors are interpolated along the edges and then between edges along each scan line.
At each pixel along the scan line the light intensity is calculated using the corresponding vectors
and any desired illumination model, but originally Phong (62) adopted a specular illumination
model similar to Equation (28). Phong shading is implemented in many graphics workstation
system software.
The illumination model of Whitted [77] asked for a new shading algorithm, called ray t racing.
The algorithm traces a ray backwards form the eye through a pixel on the imaginary screen into the
object space and towards the light sources. Ray tracing gives better results than Phong shading,
but a line ar light source is usually modeled by a series of collinear point sources. Many points
lights are needed for a good approximation. Alternatively, a linear light can be modeled as an
area in order to apply the radiosity approach. However, radiosity models perfectly diffuse surfaces.
Specular reflection (what we are interested in) is thus not considered.
Using a linear light source model (Equation (29)) in a scan lin·e method requires the evaluation
of the integral at each pixel along a scan line. Recently Poulin and Amanatides [65] have shown
that the diffuse integral term of Equat ion (29) can be solved analytically, and they approximate
the specular integral term by Chebyshev polynomials.

5 .3 Visibility of surface discontinuity


c
Flat shading of a 0 polygonal surface gives clear color intensitiy discontinuities, which is correct.
G our a ud and Phong shading use a polygonal surface as an app roximation of a smooth surface,
and try to give and impression of smoothness by a continuously varying color intensity. However,
when the intensity changes continuously between two surface patches, but the derivative of the
intensity does not, one perceives the well known Mach bands, discovered by Mach in 1865 (66, 67].
The Mach band effect is the perception of a darker band on the dark patch and a lighter band on
the light patch along the border between the patches. The perception of Mach bands is caused
by our visual system that exaggerates intensity changes where the actual intensity or intensity
derivative exhibits a discontinuity, see Figure 13.
So, the Gouraud shading algorithm creates visual artifacts due to t he approximation of curved
objects by planar facets. Although the intensity changes continuously, Mach bands appear because
of t he discontinuous derivative of the intensity across the edges, since the interpolation is only
linear.
Also when interpolating vectors instead of intensities, as in Phong shading, the computed
intensity need not b e C 1 -continuous. So Phong shading also suffers from Mach banding, be it
much less than Gouraud shading. Both algorithms make another error however: interpolation is
performed in image space instead of object space. This is more serious for Phong shading since
the specular highlights are displaced.
Let us see how continuity between surface patches affects the specular reflection of a linear light
source. Given a linear light source LL(t), the shape of the reflection curve LL"(t) depends on the
shape of the surface. If the surface is G 1 -continuous the tangent vector of LL'"(t ) at both sides of
the patch boundary lie in t he surface tangent plane, but need not be collinear, see Figure 14. So,
G 1 surfaces generally show a reflection line that is not G 1 -continuous.
C onversely, let us assume that LL'" (t) is G 1 -continuous, as well as the surface itself. Let V be
the view point (position of the eye) such that t he angle between E and R is zero, then

V - LL*(t)
E(t) = IJV - LL•(t)ll

23
Figure 14: G 1 surface with a reflection curve LL •(t) that is not G 1 .

and
LL(t) - LL•(t)
L (t) = ll LL(t) - LL-(t)ll .
A necessary and sufficient condition for a point LL•(t ) to be a reflection point is (see Figure 15):

(30) N(t) · (E(t) - L(t)) = 0,

where N(t) is the surface normal along the reflection curve, and '·'the dot or scalar product of
two vectors. Differen tiating of Equation (30) with respect to t gives

(31) N <1 >(t). (E(t) - L(t)) + N(t) · (E <1 >(t) - £ C1l(t)) = 0.


Since the surface is G 1 -continuous, N(t) is continuous, and since we assume that LL• (t) is G 1 -
contin uous, E(t), EC 1 l(t), L(t), and £C 1 >(t) are also continuous. Therefore, Equation (31) only
holds when N< 1 l(t) is continuous. This implies that the surface curvature is continuous. So, a G 1
reflection curve implies a G 2 -continuous surface.
Note that the surface can thus be inspected visually without computing explicitly curves of
constant curvature along the surface, or other surface features, see Higashi et al. [47] Incorporating
a linear light source into the illumination model gives surface continuity information for free. Bear
in mind however, that algorithms interpolating the surface normal vector, like Phong shading, may
introduce artifacts again.

6 Conclusions
This paper has given an overview of notions of continuity for curves and surfaces: the classical
parametric continuity (C") and alternative notions of continuity based on reparameterization (Gn)
and the differential geometry approaches based on Frenet frames (Fn) and ruled tangent surfaces
(T") have been t reated. In addition to other surveys, overviews, and tutorials, this paper has given
explicit expressions for the .B-constraints for surfaces in addition to those for curves.
I have shown that derivatives at closed surfaces exhibit singularities for piecewise parameter-
ization in addition to the case for global parameterization, so that parametric continuity is not
even properly defined More important however, other notions of continuity give more freedom in
modeling curves and surfaces, in some cases giving intuitive shape parameters.
Finally I have related geometric continuity to illumination models and shading algorithms, and
have shown in particular that a reflection curve is G 1 if the surface is G2 , but generally not G 1 if
the surface is only G 1 -continuous. P erception of (dis)continuity of a surface depends not only on
the surface itself but a.lso on the illumination, in a computer model as well as in real. The t erm
'visual continuity' for what has been defined as G"-continuity is therefore inappropriate.

Acknowledge me nt
I like to thank Miente Bakker a.nd Edwin B lake for discussion s and careful reading of this manuscript.

24
LL(t) \
\
\ N v
\

Figure 15: Linear light source reflection geometry.

References
[1] Peter Alfeld. Scattered data in.terpolation in three or more variables. In Lyche and Schumaker
(57), pages 1 - 33.
[2) Robert E. Barnhill and Richard F. Riesenfeld, editors. Computer Aided Geometric Design.
Academic Press, 1974.
[3] Brian A. Barsky. The {3 -Spline: A Local Representation Based on Shape Parameters and
Fundamental Geometric Measures. PhD thesis, University of Utah, Salt Lake City, 1981.
[4] Brian A. Barsky. Computer Graphics and Geometric Modeling Using {3 -SP'lines. Springer-
Verlag, 1988.
[5} Brian A. Barsky and John C. Beatty. Local control of bias and tension in beta-splines. ACM
Transactions on Graphics, 2(2):109 - 134, April 1983.
[6] Brian A. Barsky and Tony D. DeRose. Geometric continuity of parametric curves: Three
equivalent characterizations. Computer Graphics & Applications, 9(6):60 - 68, November
1989.
(7] Brian A . Barsky and Tony D. DeRose. Geometric continuity of parametric curves: Construc-
tions of geometrically continuous splines. Computer Graphics & Application.s, 10(1):60 - 68,
January 1990.
[8] Richard H. Bartels, John C . Beatty, and Brian A. Barksy. An Introduction to Splines For Use
in Computer Graphics and Geometric Modeling. Morgan Kaufmann Publishers Inc., 1987.
(9) S. Bernstein. Demonstration de theoreme de Weierstrass fondee sur le calcul des probabilites.
Harkov Soobs. Matem ob-va, 13(1-2), 1912.
[10) Pierre E. Bezier. Numerical Control - Mathematics and Applications, translation by A. Robin
Forrest and Anne F. Pankhurst of Emploi des machines ci commande numerique, Masson ef
Cie, Paris, 1970. John Wiley & Sons, 1972.
[11] Wolfgang Bohrn. Curvature continuous curves and surfaces. Computer Aided Geometric
Design, 2:313 - 323, 1985.
[12] Wolfgang Bohm. Smooth curves and surfaces. In Farin [30], pages 175 - 184.
[13] Wolfgang Bohm. On the definition of geometric continuity. Computer-Aided Design, 20(7):370
- 372, 1988.
[14] Wolfgang Bohm. Visual continuity. Computer-Aided Design, 20(6):307 - 311, 1988.
[15] Wolfgang Bohm, Gerald Farin, and Jurgen Kahmann. A survey of curve and surface methods
in CAGD. Computer Aided Geometruic Design, 1(1):1 - 60, 1984.
[16) Malcolm S. Casale. Free-form surface modelling with trimmed surface patches. IEEE Com-
puter Graphics & Applications, 7(1):33 - 43, January 1987.
[17) Edwin Catmull and Raphael Rom. A class ·of local interpolating splines. In Barnhill and
Riesenfeld [2}, p ages 317 - 326.
[18] Carl de Boor. A Practicle G'Uide to Splines. Applied Mathematical Sciences 27. Springer-

25
Verlag, 1978.
[19] Wendelin L. F. Degen. Explicit continuity conditions for adjacent Bezier surface patches.
Computer Aided Geometric Design, 7:181 - 189, 1990.
[20] Tony DeRose and Brian A. Barsky. An intuitive approach to geometric continuity for para-
metric curves and surfaces. In Nadia Magnenat-Thalmann and Daniel Thalmann, editors,
Computer-Generated Images - The State of the Art, pages 159 - 175. Springer-Verlag, 1985.
[21] Tony D. DeRose. Necessary and sufficient conditions for tangent plane continuity of Bezier
surfaces. Computer Aided Geometric Design, 7:165 - 179, 1990.
{22] Manfredo P. do Carma. Differential Geometry of Curves and Surfaces. Prentice-Hall, 1976.
{23] Wen-Hui Du and Francis J. M. Schmitt. On the G 1 smooth connection between triangular
Bernstein-Bezier patches, part I: Around an n-patch corner. Technical Report 89 D 012,
Telecom Paris, France, October 1989.
[24] Wen-Hui Du and Francis J. M. Schmitt . On the G1 smooth connection between triangular
Bernstein-Bezier patches, part II: In a piecewise representation. Technical Report 89 D 013,
Telecom Paris, France, October 1989.
[25] Wen-Hui Du and Francis J. M. Schmitt. On the G 1 continuity of piecewise bezier surfaces: a
r eview with new results. Computer Aided Design, 22(9):556 - 573, November 1990.
[26] Nira Dyn and Charles A. Michelli. Piecewise polynomial spaces and geometric continuity of
curves. Numerische Mathematik, 54:319 - 337, 1988.
(27] Gerald Farin. A construction for visual C 1 continuity of polynomial surface patches. Computer
Graphics and Image Processing, 20(3):272 - 282, November 1982.
(28] Gerald Farin. Visually C 2 cubic splines. Computer Aided Design, 14(3):137 - 139, May 1982.
(29] Gerald Farin. Triangular Bernstein-Bezier patches. Computer Aided Geometric Design, 3(2):83
- 127, 1986.
[30] Gerald Farin, editor. Geometric Modeling: Alg.o rithms and New Trends. SIAM, 1987.
[31] Gerald Farin. Rational curves and surfaces. In Lyche and Schumaker [57] , pages 215 - 238.
(32] Gerald Farin. Curves and Surfaces for Computer Aided Geometric De$ign. Academic Press,
2 edition, 1990.
[33] A. H. Fowler and C . W . Wilson. Cubic spline, a curve fitting routine. Technica l Report
Corporate Report Y-1400, Union Carbide, 1966.
[34] G. Geise. Uber beriihrende Kegelschnitte einer ebenen Kurve. Zeitschrift fi.ir A ngewandte
Mathematik und Mechanik, 42(7/ 8):297 - 304, July/ August 1962.
[35] Andrew S. Glassner, editor. An Introduction to Ray-Tracing. Academic Press, 1989.
[36] R. N. Goldman and B. A. Barsky. On ,B-continuous functions and their application to the
construction of geometrically continuous curves and surfaces. In Lyche and Schumaker [57],
pages 299 - 311.
(37] R. N. Goldman and C. A. Michelli. Algebraic aspects of geometric continuity. In Lyche and
Schumaker [57], pages 313 - 332.
[38] C. M. Goral, K. E. Torrance, and D. P. Greenburg. Modeling the interaction of light between
diffuse surfaces. Proceedings SIGGRAPH '84, Computer Graphics, 18(3):213 - 222, 1984.
[39] Henri Gouraud. Continuous shading of curved surfaces. IEEE Transactions on Computers,
C-20(6):623 - 628, 1971.
[40] John A. Gregory. Geometric continuity. In Lyche and Schuma ker (57), pages 353 - 371.
(41] Hans Hagen. Geometric spline curves. Computer Aided Geometric Design, 2(1 - 3):223 - 227,
1985.
(42] Hans Hagen and Helmut Pottmann. Curvature continuous triangular interpolants. In Lyche
and Schumaker (57], pages 373 - 384.
[43] R. Hall. Illumination and Color in Computeter Generated Imagery. Springer-Verlag, 1989.
[44] Andrew J. Hanson and Pheng A. Heng. Visualizing the fourth dimension using geometry
and light. In Proceedings of Visualization '91, San Diego, California, pages 321 - 328. IEEE
Computer Society Press, October 1991.
(45] G. Herron. Smooth closed surfaces with discrete t riangular interpolants. Computer Aided
Geometric Design, 2(4):297 - 306, 1985.
[46] Gary Herron. Techniques for visual continuity. In Farin (30], pages 163 - 174.

26
(47] Masatake Higashi, Takuya Kushimoto, and Mamoru Hosaka. On formulation and display for
visualizing features and evaluating quality of free-form surfaces. In C. E. Vandoni and D. A.
Duce, editors, Eurographics '90, pages 299 - 309. North-Holland, 1990.
[4&] M. E. Hohmeyer and B. A. Barsky. Rational continuity: Parametric, geometric, and Frenet
frame continuity of rational curves. ACM Transactions on Graphics, 8(4):335 - 359, October
1989.
[49] A. K . Jones. Nonrectangular surface patches with curvature continuity. Computer Aided
Design, 20(6):325 - 335, 1988.
(50] Ji.irgen Kahmann. Continuity of curvature between adjacent Bezier patches. In Robert E.
Barnhill and Wolfgang Bohm, editors, Surfaces in Computer Aided Geometric Design, pages
65 - 75. North-Holland, 1983.
(51] Reinhold Klass. Correction of local surface irregularities using reflection lines. Computer-Aided
Design, 12(2):73 - 77, March 1980.
(52] Donald E. Knuth. The Art of Computer Programming Volume 1: Fundamental Algorithms.
Addison-Wesley, 2nd edition, 1973.
[53] Jan J. Koenderink. Solid Shape. MIT Press, 1990.
[54] Jeffrey M. Lane, Loren C. Carpenter, Turner Whitted, and James F. Blinn. Scan line methods
for displaying parametrically defined surfa.ces. Communications of the ACM, 23(1):23 - 34,
January 1980.
(55] D. Liu and J . Hoschek. CG 1 continuity conditions between adjacent rectangular and triangular
Bezier surface patches. Computer Aided Design, 21(4) :194-200, May 1989.
[56] Dingyuan Liu. GC 1 continuity conditions between two adjacent rational Bezier surface
patches. Computer Aided Geometric Design, 7:151 - 163, 1990.
(57.J Tom Lyche and Larry L. Schumaker, editors. Mathematical Methods in Computer Aided
Geometric Design (conference held in Olso, Norway, 1988) . Academic Press, 1989.
(58) J . R. Manning. Continuity conditions for spline curves. The Computer J ournal, 17(2):181 -
186, May 1974.
[59] Gregory M. Nielson. Some piecewise polynomial alternatives to splines under tension. In
Barnhill and Riesenfeld [2], pages 209 - 235.
(60) Gregory M. Nielson. A transfinite, visually continuous, triangular interpolant. In Farin (30],
pages 235 - 246.
(61) Pia Pfluger and Marian Neamtu. Geometrically smooth interpolation by triangular Bernstein-
Bezier patches with coalescent control points. In P. J. Laurent, A. Le Mehaute, and L. L.
Schumaker, editors, Curves and Surfaces, pages 363 - 366. Academic Press, 1991.
(62] Bui Tuong Phong. Illumination for computer-generated pictures. Communications of the
ACM, 18(6):311 - 317, June 1975.
[63] Bruce R. Piper. Visually smooth interpola.tion with triangular Bezier patches. In Farin (30},
pages 221 - 233.
(64] Helmut Pottrnann. Projectively invariant classes of geometric continuity for CAGD. Computer
Aided Geometric Design, 6:307 - 321, 1989.
[65] Pierre Poulin and John Amanatides. Shading and shadowing with linear light sources. In
C. E. Vandoni and D. A. Duce, editors, Eurographics '90, pages 377 - 386. North-Holland,
1990.
[66] Floyd Ratliff. Mach Bands: Quantitative Studies on Neural Networks in the Retina. Holden
Day, San Francisco, 1965.
[67] Floyd Ratliff. Contour and contrast. Scientific American, 226(6):90 - 101, June 1972.
(68] Richard F. Riesenfeld. Applications of B-spline Approximation to Geometric Problems of
Computer-Aided Design. PhD thesis, Department of Systems and Information Sciences, Syra-
cuse University, Syracuse, New York, 1973.
[69] Malcolm A. Sabin. Parametric splines in tension. Technical Report Technical Report
VTO/MS/160, British Aircraft Corporation, 1970.
(70] Malcolm A. Sabin. The Use of Piecewise Forms for the Numerical Representation of Shape.
PhD thesis, Hungarian Academy of Sciences, Budapest, Hungary, 1976.
[71] Ramon F. Sarraga. G 1 interpolation of generally unrestricted cubic Bezier curves. Comp:u.ter

27
Aided Geometric Design, 4(1):23 - 39 (Errata: 6(2) 1989, 167 -171), 1987.
[72) I. J. Schoenberg. Contributions to the problem of approximation of equidistant data by
analytic functions. Quaterly of Applied Mathematics, 4:Part A 45 - 99, Part B 112 - 141,
1946.
[73] I. J. Schoenberg. Cardinal Spline Interpolation. SIAM, 1973.
[74] M. Veron, G. Ris, and J.-P. Musse. Continuity of biparametric surface patches. Computer-
Aided Design, 8(4):267 - 273, October 1976.
[75] M. A. Watkins. Problems in geometric cont inuity. Computer Aided Design, 20(8), October
1988.
[76] Jorg Weber. Methoden zur Konstruktion krti.mmungsstetiger Freiformftachen. PhD thesis,
Technischen Universitii.t Berlin, 1990.
[77] Turner Whitted. An improved illumination model for shaded display. Communications of the
ACM, 23(6):343 - 349, January 1980.

28

You might also like