Veltkamp Survey of Continuities and Surfaces: CW/ The Centre For Mathematics The Mathematical Centre Foundation
Veltkamp Survey of Continuities and Surfaces: CW/ The Centre For Mathematics The Mathematical Centre Foundation
R.C. Veltkamp
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).
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 .
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:
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
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:
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.
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.
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
du du.2
Letting f3i indicate uCil(u0 ), we get the following equations:
(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)
(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
·1
c(i,j, k1, ... ' k;) = k l •'( 1.')k i.
I • • . Jc;.' ( t"!)k
. 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
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.
where 11:2(w) is a scalar such that 1it3(w) ll = l; K:2(w) is called torsion. Planar curves have zero
torsion.
7
s(v)
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] :
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.
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)].
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
(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.
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.
...., ( ) _ . 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.
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.
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.
(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:
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 :
( 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:
16
r(O, l)
r(t,u)
u s ('O, 1)
s(v,w)
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].
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.
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] .
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
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].
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].
* N
R
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.
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.
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):
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
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
\
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