 ```13.472J/1.128J/2.158J/16.940J
COMPUTATIONAL GEOMETRY
Lecture 20
Dr. K. H. Ko
Prof. N. M. Patrikalakis
c
Massachusetts Institute of Technology
Contents
20 Advanced topics in diﬀerential geometry
20.1 Geodesics . . . . . . . . . . . . . . . . . . . . . . . . .
20.1.1 Motivation . . . . . . . . . . . . . . . . . . . .
20.1.2 Deﬁnition . . . . . . . . . . . . . . . . . . . . .
20.1.3 Governing equations . . . . . . . . . . . . . . .
20.1.4 Two-point boundary value problem . . . . . . .
20.1.5 Example . . . . . . . . . . . . . . . . . . . . . .
20.2 Developable surface . . . . . . . . . . . . . . . . . . . .
20.2.1 Motivation . . . . . . . . . . . . . . . . . . . .
20.2.2 Deﬁnition . . . . . . . . . . . . . . . . . . . . .
20.2.3 Developable surface in terms of Bézier surface .
20.2.4 Development of developable surface (ﬂattening)
20.3 Umbilics . . . . . . . . . . . . . . . . . . . . . . . . . .
20.3.1 Motivation . . . . . . . . . . . . . . . . . . . .
20.3.2 Deﬁnition . . . . . . . . . . . . . . . . . . . . .
20.3.3 Computation of umbilical points . . . . . . . .
20.3.4 Classiﬁcation . . . . . . . . . . . . . . . . . . .
20.3.5 Characteristic lines . . . . . . . . . . . . . . . .
20.4 Parabolic, ridge and sub-parabolic points . . . . . . .
20.4.1 Motivation . . . . . . . . . . . . . . . . . . . .
20.4.2 Focal surfaces . . . . . . . . . . . . . . . . . . .
20.4.3 Parabolic points . . . . . . . . . . . . . . . . .
20.4.4 Ridge points . . . . . . . . . . . . . . . . . . .
20.4.5 Sub-parabolic points . . . . . . . . . . . . . . .
Bibliography
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
2
2
2
3
5
8
10
10
10
12
13
15
15
15
15
16
18
21
21
21
22
22
23
25
• Geodesics : Chapter 10, pp.265 - 291
• Umbilics : Chapter 9, pp.231 - 264
1
Lecture 20
geometry
20.1
Geodesics
In this section we study the computation of shortest path between two points on free-form
surfaces [14, 11].
20.1.1
Motivation
• ship design
• robot motion planning
• installation of underwater cable
20.1.2
Deﬁnition
• t: Unit tangent vector of C at P
• n: Unit normal vector of C at P
• N: Unit surface normal vector of S at P
• u: Unit vector perpendicular to t in the tangent plane deﬁned by N × t.
2
N
P
S
u
t
kg
n
C
kn
k
Figure 20.1: Deﬁnition of geodesic curvature.
• We can decompose the curvature vector k of C into N component kn , which is called
normal curvature vector, and u component kg , which is called geodesic curvature vector
k = kn + kg = −ρn N + ρg u
(20.1)
Here ρn and ρg are the normal and geodesic curvatures, respectively and deﬁned as
follows:
ρn = −k · N
ρg = k · u
(20.2)
(20.3)
• Consequently,
ρg =
dt
· (N × t)
ds
(20.4)
• Geodesic paths are sometimes deﬁned as shortest path between points on a surface,
however this is not always a satisfactory deﬁnition.
Deﬁnition: Geodesics are curves of zero geodesic curvature .
20.1.3
Governing equations
• The unit tangent vector of the curve C on the surface r is given by
t=
dr(u(s), v(s))
du
dv
= ru
+ rv
ds
ds
ds
(20.5)
• Hence using chain rules
⎤
dt
du
= ruu
ds
ds
⎦2
du dv
+ 2ruv
+ rvv
ds ds
3
⎤
dv
ds
⎦2
+ ru
d2 v
d2 u
+
r
v 2
ds2
ds
(20.6)
• Consider that the surface normal N has the direction of normal of the geodesic line ±n
n · ru = 0,
• Since kn =
dt
,
ds
n · rv = 0.
(20.7)
equation (20.7) can be rewritten as
dt
· ru = 0,
ds
dt
· rv = 0
ds
(20.8)
• By substituting equation (20.6) into equations (20.8) we obtain
⎤
⎦2
du dv
dv
+ (rvv · ru )
+ 2(ruv · ru )
ds ds
ds
⎤
⎦2
dv
du dv
+ (rvv · rv )
+ 2(ruv · rv )
ds ds
ds
du
(ruu · ru )
ds
du
(ruu · rv )
ds
⎤
⎦2
+E
d2 v
d2 u
+
F
=0
ds2
ds2
⎤
⎦2
+F
d2 u
d2 v
+
G
= 0 (20.10)
ds2
ds2
2
(20.9)
2
• By eliminating ddsv2 from equation (20.9) using equation (20.10), and eliminating ddsu2 from
equation (20.10) using equation (20.9) and employing the Christoﬀel symbols, we obtain
du
d2 u
1
+ �11
2
ds
ds
⎦2
d2 v
du
2
+ �11
2
ds
ds
⎦2
⎤
⎤
+
du dv
2�112
+
du dv
2�212
ds ds
ds ds
+
�122
⎤
dv
ds
⎦2
= 0
(20.11)
+
2
�22
⎤
dv
ds
⎦2
= 0
(20.12)
• Where �ijk (i, j, k = 1, 2) are the Christoﬀel symbols deﬁned as follows:
GEu − 2F Fu + F Ev
,
2(EG − F 2 )
GEv − F Gu
=
,
2(EG − F 2 )
2GFv − GGu + F Gv
=
,
2(EG − F 2 )
�111 =
�112
�122
2EFu − EEv + F Eu
2(EG − F 2 )
EGu − F Ev
�212 =
2(EG − F 2 )
EGv − 2F Fv + F Gu
�222 =
2(EG − F 2 )
�211 =
(20.13)
• These two second order diﬀerential equations can be rewritten as a system of four ﬁrst
order diﬀerential equations .
du
ds
dv
ds
dp
ds
dq
ds
= p
(20.14)
= q
(20.15)
2
= −�111 p2 − 2�112 pq − �1
22 q
(20.16)
2
= −�211 p2 − 2�212 pq − �2
22 q
(20.17)
4
• Euler Lagrange Equations (Calculus of Variations)
We can also ﬁnd this result by means of the general rules of the calculus of variations.
We want to minimize
I=
�
b
a
ds =
�
a
b
f (u, v, v̇)du
(20.18)
where
f (u, v, v̇) =
�
E + 2F v̇ + Gv̇ 2 ,
v̇ =
dv
du
(20.19)
πf
d πf
= 0
−
πv
du πv̇
(20.20)
from which we can derive the same diﬀerential equation for geodesics.
20.1.4
Two-point boundary value problem
• We can solve a system of four ﬁrst order ordinary diﬀerential equations (20.14) to (20.17)
as
– Initial-value problem (IVP), where all four boundary conditions are given at one
point, or as
– Boundary-value problem (BVP), where four boundary conditions are speciﬁed at
two distinct points.
• The ﬁrst order diﬀerential equation for a boundary value problem can be written in
vector form as:
dy
= g(s, y), y(A) = (uA , vA , pA , qA )T , y(B) = (uB , vB , pB , qB )T
ds
(20.21)
where pA , pB , qA and qB are unknowns,
y = (u, v, p, q)T
g = (p, q, −�111 p2 − 2�112 pq − �122 q 2 , −�211 p2 − 2�212 pq − �222 q 2 )T
(20.22)
(20.23)
• There are two commonly used approaches to the numerical solution of BVP.
1. Shooting method: easy to implement but unstable.
2. Relaxation method: more sophisticated but stable.
• Shooting method
– We assume values at s = A, which are not given as boundary conditions at s = A
and compute the solution of the resulting IVP to s = B.
5
– The computed values of y(B) will not, in general, agree with the corresponding
boundary condition at s = B.
– Consequently, we need to adjust the initial values and try again.
– The process is repeated until the computed values at the ﬁnal point agree with the
boundary conditions and referred as shooting method.
– Formulation: Using the ﬁrst fundamental form, given pA we can obtain qA from
qA =
−F pA ±
�
F 2 p2A − G(Ep2A − 1)
.
G
Thus we assume pA and solve the diﬀerential equation as IVP using, say RungeKutta method. Here we also have to assume the entire arc length of the geodesic
path s to stop the integration. Thus the unknowns can be considered as pA and s.
If we denote the computed value of (uB , vB ) as (u�B , vB� ), the diﬀerence can be given
�
as (u�B
− uB , vB
− vB )T . We need to adjust pA and s to make the diﬀerence zero.
This can be done by employing the Newton’s method
⎤
pA
s
⎦
=
n+1
⎤
pA
s
⎦
n
⎣
−�
�u�B
�pA
�
�vB
�pA
�u�B
�s
�
�vB
�s
�−1 ⎤
�
n
(�)
uB − u B
(�)
vB − v B
⎦
where
πu�B
u�B (pA + �pA ) − u�B (pA ) πu�B
u�B (s + �s) − u�B (s)
=
,
=
πPA
�pA
πs
�s
πvB�
v
B� (pA + �pA ) − vB� (pA ) πvB�
vB� (s + �s) − vB� (s)
=
,
=
πPA
�pA
πs
�s
• Relaxation method
– The second method is based on a ﬁnite diﬀerence approximation to
of points in the interval [A, B].
dy
ds
on a mesh
– This method starts with an initial guess and improves the solution iteratively and
referred as, direct method, relaxation method or ﬁnite diﬀerence method.
– The shooting method is often very sensitive to the unknown initial angles at point
A and unless a good initial guess is provided, the integrated path will never reach
the other point B, while the relaxation method starts with two end points ﬁxed and
relaxes to the true solution and hence it is much more stable.
– Let us consider a mesh of points satisfying A = s1 < s2 < . . . < sm = B. We
approximate the n ﬁrst order diﬀerential equations by the trapezoidal rule .
Yk − Yk−1
1
= [Gk + Gk−1 ],
sk − sk−1
2
6
k = 2, 3, . . . , m
(20.24)
where the n-vectors Yk , Gk are meant to approximate y(sk ) and g(sk ) with bound­
ary conditions
Y1 = β = (uA , vA , p1 , q1 )T , Ym = � = (uB , vB , pm , qm )T
(20.25)
– Y1 has n1 = 2 known components, while Ym has n2 = n − n1 = 4 − 2 = 2 known
components.
Boundary Conditions
Unknowns
�����
�����������
�����������
�����������
�����������
�����������
��������
�
�
�
�
�
�
�u����u ���u���u�����������������u���u����u��
�v����v ���v���v�����������������v���v����v��
�������������������������������������
�p����p ���p���p�����������������p���p����p��
��q���
�����q ������q�
�����q����. ��. �
�. ��.��.��.�����
���������. ��. �
�.��q������q���
�����q����
1
2
3
4
M−2
M−1
M
1
2
3
4
M−2
M−1
M
1
2
3
4
M−2
M−1
M
1
2
3
4
M−2
M−1
M
s2
s3
sM−2
sM−1
sM
s1
s4
Figure 20.2: Mesh points.
– This discrete approximation will be accurate to the order of h2 (h = maxk {sk −
sk−1 }). Equation (20.24) forms a system of (m − 1)n nonlinear algebraic equations
with (m − 1)n unknowns.
– Let us refer to equation (20.24) as
Fk = (F1,k , F2,k , . . . , Fn,k )T =
Yk − Yk−1 1
− [Gk + Gk−1 ] = 0
sk − sk−1
2
(20.26)
– and the boundary conditions (20.25) as
F1 = (F1,1 , F2,1 , . . . , Fn1 ,1 )T = Y1 − β = 0,
Fm+1 = (F1,m+1 , F2,m+1 , . . . , Fn2 ,m+1 )T = Ym − � = 0
(20.27)
– then we have mn nonlinear algebraic equations
F = (FT1 , FT2 , . . . , FTm+1 )T = 0
7
(20.28)
Points
m
101
Tolerance
κN
1.0E-3
Iterations
Geodesic Distance
L M R
L
M
R
10 1 10 1.661 1.865 1.661
Table 20.1: Numerical conditions and results for the computation of the geodesic path between
corner points of the wave-like surface.
– and can be computed by quadratically convergent Newton iteration, if a suﬃciently
T T
) is provided. The Newton iter­
accurate starting vector Y (0) = (Y1T , Y2T , . . . , Ym
ation scheme is given by
Y (i+1) = Y (i) + �Y (i)
[J(i) ]�Y (i) = −F(i)
(20.29)
(20.30)
where [J(i) ] is the mn by mn Jacobian matrix of F(i) with respect to Y (i) .
y
x
z
Figure 20.3: Geodesic paths on the wave-like bicubic B-spline surface between points of two
corners.
20.1.5
Example
Bilinear surface r(u, v) = (u, v, uv).
E = 1 + v 2 , F = uv, G = 1 + u2
Eu = 0,
Fu = v, Gu = 2u
Ev = 2v,
Fv = u, Gv = 0
8
y
x
z
Figure 20.4: Convergence of the right geodesic path in Figure 20.3.
−2(uv) · v + uv · (2v)
=0
2[(1 + v 2 )(1 + u2 ) − u2 v 2 ]
= �122 = �222 = 0
v
= 2
u + v2 + 1
u
= 2
u + v2 + 1
�111 =
�211
1
�12
�212
Finally the diﬀerential equations are given by
du
ds
dv
ds
dp
ds
dq
ds
= p
= q
−2u
pq
+ v2 + 1
−2v
= 2
pq.
u + v2 + 1
=
u2
9
20.2
Developable surface
Developable surfaces are a special class of surfaces that can be developed or unfolded onto a
plane without stretching or tearing [1, 9, 5, 16, 15].
20.2.1
Motivation
• In shipbuilding, doubly curved plates are manufactured by roller and line heating pro­
cesses, while the singly curved plates (developable surface) are manufactured by roller
only.
• The use of developable surfaces has several advantages such as lower labor costs in
construction, smaller capital investment in equipment, ease of repair and simple tools for
construction.
• In automobile production, body panels, upholstery and window glass are developable
surfaces.
20.2.2
Deﬁnition
• A ruled surface is deﬁned as a surface generated by the motion of a straight line referred
as a generator or ruling .
• The mathematical representation of a ruled surface is given by
r(u, v) = rA (u) + vβ(u)
(20.31)
where r(u) is a 3D curve called the directrix or base curve of the ruled surface and β(u)
is a unit vector which gives the direction of the ruling at each point on the directrix see
Figure 20.5.
r(u,v)= rA(u)+ v α(u)
ruling or
generator
rA(u)
directrix
α(u)
Figure 20.5: Deﬁnition of ruled surface
10
• An alternate expression based on rulings joining corresponding points on two space curves
rA (u) and rB (u) is given by
r(u, v) = (1 − v)rA (u) + vrB (u)
(20.32)
• Bilinear surface is a ruled surface.
rA (u) = (1 − u)b00 + ub10
rB (u) = (1 − u)b01 + ub11
r(u, v) = (1 − v)rA (u) + vrB (u)
= (1 − u)(1 − v)b00 (u) + (1 − v)ub10 + v(1 − u)b01 + uvb11
• A ruled surface is a developable surface if and only if 
r˙ A · (β × β)
˙ = 0
(20.33)
where × and · are the cross and dot products or
(rA − rB ) · (ṙA × ṙB ) = 0
(20.34)
• The following statements are the equivalent necessary and suﬃcient conditions for a
surface to be developable .
1. Gaussian curvature is zero.
2. Geodesics on a developable surface can be mapped onto straight lines in the plane,
and the straight lines in plane can map into geodesics on a developable surface.
3. The normal vectors on a developable surface along the ruling are parallel.
4. Developable surfaces possess the same tangent plane at all points of the same gen­
erator.
• If the direction of the ruling β(u) is constant, the condition for developability is auto­
matically satisﬁed since β(u)
= 0. This implies that the ruled surface is a cylinder.
˙
• If the direction of the ruling β(u) is given by rA (u) − a, then the condition (20.33)
becomes ṙA (u) · ((rA − a) × ṙA (u)) → 0 and hence the surface is developable. In this case
the surface is a cone with apex a.
• Finally, if β(u) is a tangent vector to rA (u), then again the condition (20.33) is satisﬁed,
and the resulting developable surface is called a tangential developable surface. In this
case the base curve coincides with the so-called the edge of regression or cuspidal edge.
11
20.2.3
Developable surface in terms of Bézier surface
• Let us deﬁne a developable Bézier surface in terms of two Bézier curves (directrices) and
rulings between pairs of points from each curve , see Figures 20.6.
• We restrict the two directrices (rA (t), rB (t)) to lie in parallel planes so that ṙB (t) =
ζ(t)ṙA (t). Here ζ(t) denotes a linear function of t.
• Then the condition for developability becomes (ζ(t) − 1)ṙA × (rB − rA ) · ṙA → 0 and hence
it is automatically satisﬁed.
• Given the control points of the design curve rA (t), we want to determine those of rB (t).
Example: rA (t) quadratic and rB (t) cubic
b3
b2
generator
b1
directrix
rB
a
b0
a
a
2
directrix
rA
1
0
Figure 20.6: A Bézier Developable Surface with Quadratic rA (t) and Cubic rB (t)
• Two Bézier Curves
rA (t) = s2 a0 + 2sta1 + t2 a2
rB (t) = s3 b0 + 3s2 tb1 + 3st2 b2 + t3 b3
where s = 1 − t
• Tangent vectors
ṙA (t) = 2[s(a1 − a0 ) + t(a2 − a1 )]
ṙB (t) = 3[s2 (b1 − b0 ) + 2st(b2 − b1 ) + t2 (b3 − b2 )]
• Scalar function
ζ(t) = ζ0 (1 − t) + ζ1 t = ζ0 s + ζ1 t
12
• Substitute ṙA (t), ṙB (t) and ζ(t) into ṙB (t) = ζ(t)ṙA (t) and collect terms and equating
the coeﬃcients of the independent functions s2 , 2st and t2 to zero.
• We get three equations
2ζ0 (a1 − a0 ) = 3(b1 − b0 )
ζ0 (a2 − a1 ) + ζ1 (a1 − a0 ) = 3(b2 − b1 )
2ζ1 (a2 − a1 ) = 3(b3 − b2 )
• 6 scalar equations with 10 scalar unknowns (b0 , b1 , b2 , b3 , ζ0 , ζ1 )
• We can ﬁx b0 and b3 .
20.2.4
Development of developable surface (ﬂattening)
• In the manufacture of developable surfaces, it is necessary to calculate the plane devel­
opment of these surfaces .
• The development is based on the isometric mapping .
– The length of any arc on the developable surface is the same as that of on the
developed plane.
– The coeﬃcients of the ﬁrst fundamental forms at the corresponding points are the
same.
– Isometric surfaces have the same Gaussian curvature at corresponding points. Cor­
responding curves on those surfaces have the same geodesic curvature at correspond­
ing points.
– Every isometric mapping is conformal (the angle of intersection of every arbitrary
pair of intersecting arcs are preserved).
• Procedures
– Map one of the directrix isometrically onto the plane by integrating a system of
ordinary diﬀerential equation from A to C, see Figure 20.7.
d2 x
dy
− ρg (s) = 0
2
ds
ds
d2 y
dx
+ ρg (s)
= 0
ds2
ds
(20.35)
(20.36)
– Compute the angle of two isoparametric lines at A.
cos β =
ru (0, 0) rv (0, 0)
·
|ru (0, 0)| |rv (0, 0)|
13
(20.37)
Generator
C
D
Directrix
B
θ
Directrix
Generator
A
Figure 20.7: Developed surface.
– Since we know the length and direction of the generator at A, we may obtain the
point B.
– Integrate a system of ordinary diﬀerential equation from B to D.
– Connect C and D.
14
20.3
Umbilics
20.3.1
Motivation
• Identiﬁcation of singular points in the principal direction ﬁeld
• Fingerprints of shapes
• Object matching
• Object recognition
20.3.2
Deﬁnition
An umbilic is a point on a surface where the normal curvatures in all directions are equal and
the principal curvature directions are indeterminate. Locally, a surface around an umbilical
point can be best approximated by a circle whose radius is equal to a radius of curvature at
the umbilical point.
20.3.3
Computation of umbilical points
For NURBS surfaces, umbilical points can be calculated by solving a non-linear system of
equations derived from the deﬁnition using the Gaussian (K) and the mean (H) curvatures as
follows :
�
(20.38)
ρ1,2 (u, v) = H(u, v) ± H 2 (u, v) − K(u, v).
Let W (u, v) = H 2 − K. The principal curvatures, ρ1,2 , are real valued functions so that W √ 0
must hold. From the deﬁnition of the umbilical point we have W (u, v) = 0. With these two
conditions combined, we can infer that at an umbilical point, W (u, v) has a global minimum
[17, 18]. Here, we assume that W is at least C 2 smooth. Then, the condition that W has a
global minimum at an umbilic implies that ≡W = 0. Therefore, at an umbilic the following
equations hold :
πW (u, v)
πW (u, v)
W (u, v) = 0,
= 0,
= 0.
(20.39)
πu
πv
Given a polynomial parametric surface patch such as a rational Bézier surface patch, we
can set W = PPND , where PN and PD are polynomials in u and v. With the condition W √ 0,
PN √ 0 is assured since PD > 0 is always true under the regularity condition of the surface
=
. The equation W = 0 is equivalent to PN = 0. The ﬁrst derivative of W is �W
�xi
�PD
�PN
�PN
�W
2
( �xi PD − PN �xi )/PD (i = 1, 2), where x1 = u and x2 = v, which is reduced to �xi = ( �xi )/PD
using PN = 0. Therefore, equations (20.39) are reduced to 
PN (u, v) = 0,
πPN
= 0,
πu
πPN
= 0.
πv
(20.40)
To locate isolated umbilical points, a set of equations (20.40) can be solved by the rounded
interval projected polyhedron algorithm [23, 21]. But when the IPP algorithm encounters re­
gions of umbilical points, it slows down dramatically. A diﬀerent approach, called the adaptive
15
quadtree decomposition which uses the quadtree decomposition and the convex hull properties
of Bernstein polynomials, can be adopted in such a case .
20.3.4
Classiﬁcation
Umbilical points can be isolated or form lines or regions. They are classiﬁed into two types
based on their stability with respect to small perturbations:
• generic
• non-generic
Generic umbilical points are stable with respect to small perturbations.
Isolated generic umbilical points are further categorized into three types as shown in Figure
20.8 :
• lemon
• star
• monstar
Star type umbilical points are further classiﬁed into the hyperbolic star and the elliptical star
type umbilical points. Several methods are available for the classiﬁcation of isolated generic
umbilical points. What follows is an introduction to techniques of umbilical point classiﬁcation.
Lemon
Star
Monstar
Figure 20.8: Three generic umbilics
Index
The type of isolated generic umbilical points can be determined by the index. The index is the
amount of rotation that a straight line segment tangent to the lines of curvature experiences
16
when rotating in the counterclockwise direction along a small closed path around an umbilic
. The equation for direct calculation of the index is given as follows :
n
1 ⎡
��i
Index =
2� i=0
(20.41)
�
�
�
�
L+�E
+�F
where ��i = �(i+1) mod n −�i , − 12 � � ��i � 12 � and �i = tan−1 − M
, or tan−1 − M
.
+�F
N +�G
Figure 20.9 shows the principal direction ﬁelds around two distinct types of umbilical points.
The index can distinguish the star type umbilical point from the monstar or lemon type umbil-
Figure 20.9: Umbilics with principal direction ﬁelds:
ical point. If the index is − 12 , then the umbilical point is of the star type, whereas the umbilical
point is of the monstar or lemon type if the index is 12 . Being topological, this distinction is
very robust .
Complex θ plane method
An umbilical diagram shown in Figure 20.10  is a comprehensive and easy way to distinguish
the type of an isolated generic umbilical point. In order to use this diagram, the local surface
near an umbilical point has to be represented as a height function or the Monge form with
respect to a local coordinate system as follows :
r = (x, y, h(x, y)).
(20.42)
The height function h(x, y) is Taylor expanded at the origin of the local coordinate system.
Then we have
ρ
h(x, y) = − (x2 + y 2 ),
(20.43)
2
1
+ (ax3 + 3bx2 y + 3cxy 2 + dy 3 ) + O(4),
6
where ρ is the normal curvature at the umbilical point. Let us set
C(x, y) = ax3 + 3bx2 y + 3cxy 2 + dy 3 ,
(20.44)
and denote C(x, y) as cubic form. This expression implies that the local structure of a surface
near an umbilical point is dominated by the coeﬃcients of C(x, y), i.e. by (a, b, c, d), which
17
determine the type of the umbilical point [20, 22]. It is convenient to represent the cubic part
C(x, y) in the complex plane for analysis purposes. If we set � = x + iy, then the cubic part
C(x, y) becomes
2
3
ˆ
C(�)
= ω� 3 + 3�� 2 � + 3��� + ω� ,
(20.45)
with
1
[(a − 3c) + i(d − 3b)],
8
1
� =
[(a + c) + i(b + d)],
8
ω =
(20.46)
where ω ≥= 0. We can express (20.45) in a coordinate system rotated about the normal vector
without losing any essential features to make the coeﬃcient of � 3 be equal to 1 . Using
1
∂ = ω 3 �, the equation (20.45) becomes
˜ ) = ∂ 3 + 3θ∂ 2 ∂ + 3θ∂ ∂ 2 + ∂ 3 ,
C(∂
1
(20.47)
2
where θ = �ω− 3 ω− 3 . This means that the cubic part C(x, y) is parametrized with respect to
a single complex variable θ [4, 22]. Therefore, the variations of C(x, y) can be mapped onto
the complex plane [4, 20, 22]. When ω = 0, the equation (20.45) is reduced to
Ĉ(�) = 3��(�� + ��).
(20.48)
This equation corresponds to the inﬁnity in the θ plane [22, 4, 20], which is not considered in
this discussion.
˜
Depending on the structure of C(x, y) (in turn C(∂)),
three characteristic lines are deter­
mined as follows [22, 20]:
• �1 : β � 13 (2ei� + e−2i� ),
• |θ | = 1,
• �2 : β � (2ei� + e−2i� ),
where �1 and �2 are maps from β to the complex θ-plane. They divide the complex plane
into sub-regions as shown in Figure 20.10. Each sub-region corresponds to a speciﬁc type of
an umbilical point. In Figure 20.10, ES means the elliptic star, HS the hyperbolic star, M S
the monstar and L the lemon. If θ falls on a dividing curve, then the corresponding umbilical
point is of non-generic type. The behavior of such an umbilical point can be analyzed with
more higher order terms . Using this diagram, the type of an umbilical point is easily
determined, see [22, 4, 20].
20.3.5
Characteristic lines
�1 : � � 13 (2ei� + e−2i� )
The cubic form (20.47) is parabolic on the deltoid �1 . This implies that there are three
root lines of (20.47) but two of them coincide. Inside the deltoid, the cubic form (20.47) is
18
L
MS
|ω|=1
HS
HS
MS
ES
Γ1
L
HS
MS
L
Γ2
Figure 20.10: The umbilic diagram adapted from 
elliptic . It is hyperbolic outside the deltoid. This classiﬁcation is directly related to the
number of ridge lines passing through an umbilical point, and the existence of extrema of the
principal curvatures near the umbilical point [4, 10, 18]. Here, a ridge point is deﬁned as an
extremum point of a line of curvature, and a ridge line is a set of such points [10, 20]. Inside
the deltoid, the number of ridge curves is three, the extrema of principal curvatures exist, and
an umbilical point is of the elliptical star type [4, 10]. On the other hand, outside the deltoid
only one ridge curve passes through an umbilical point, no extremum of a principal curvature
exists, and the umbilical point is of the hyperbolic star type [4, 10].
|�| = 1
On the circle |θ | = 1, the cubic form (20.47) is right-angled . When the root directions of
the Hessian (20.49) are mutually orthogonal, we call that the cubic form (20.44) is right-angled
. Here, the Hessian is deﬁned as
�
�
�
1
He (x, y) = det ��
6
�
�2C
�x2
�2C
�x�y
�2C
�x�y
�2C
�y 2
�
�
�
�.
�
�
(20.49)
This implies that the maximum and minimum lines of curvature are orthogonal at an umbilical
point to form approximately a plain rectangular grid pattern . This circle is related to the
index . Inside the circle, the index is −
21 , and an umbilical point is of the star type.
19
Outside the circle, the index is 21 , and the umbilical point is classiﬁed as the lemon or monstar
type [10, 18]. On the circle, the index value is zero, and the umbilical point is of non-generic
type. This circle also has a relation with the birth/death of generic umbilical points under the
evolution of a surface .
�2 : � � (2ei� + e−2i� )
Another cubic form, called the Jacobian cubic form is deﬁned to explain the deltoid �2 as
follows:
U (x, y) = bx3 − (2c − a)x2 y − (2b − d)xy 2 − cy 3 ,
(20.50)
whose root lines are tangent to the lines of curvature near an umbilical point . On the
deltoid �2 , the cubic form (20.50) becomes parabolic . The Jacobian cubic form (20.50) is
related to the number of extrema of the cubic form (20.44) . The cubic form (20.44) can be
represented as C(r, β) in polar coordinates with x = r cos β and y = r sin β, and the expression
of the direction in which the local extrema of the cubic form C(r, β) occur, i.e. dC(�)
= 0 
d�
is reduced to the Jacobian cubic form (20.50). Inside the deltoid �2 , there are three real root
lines of the Jacobian cubic form (20.50) or three directions of the extrema of the cubic form
(20.44), which implies that three lines of curvature converge to an umbilical point [10, 22].
This umbilical point is classiﬁed as the star or monstar type [10, 22]. Outside the deltoid �2 ,
there is one root line of the Jacobian cubic form (20.50), and no extremum of the cubic form
(20.44) exists. An umbilical point of this case is of the lemon type [10, 22].
20
20.4
Parabolic, ridge and sub-parabolic points
20.4.1
Motivation
• Sophisticated classiﬁcation of umbilics
• Stronger matching conditions than the umbilic matching
• Registration
• Analysis of surface evolution
20.4.2
Focal surfaces
For any point on a surface r, two points f1 and f2 are called focal points which are deﬁned as
follows:
1
1
f2 = r + N
(20.51)
f1 = r + N,
ρ1
ρ2
where N is a normal vector at P and ρ1 and ρ2 are the maximum and minimum principal
curvatures, respectively. The focal surface is a set of focal points which can be considered as
the envelope of the normal to the surface. The focal surface will play an important role in
studying ridges, crests and sub-parabolic lines.
Figure 20.11: Focal Surfaces
21
20.4.3
Parabolic points
Contact function
Consider a surface r in Monge form as follows:
z = h(x, y) = a0 x2 + a1 xy + a2 y 2 + H.O.T,
(20.52)
so that the tangent plane at the origin is the x,y-plane. The parabolic points can be identiﬁed
by studying the intersection between r and the tangent plane. If a21 = 4a0 a2 then the surface
has A2 contact with the tangent plane.
Deﬁnition
The parabolic points on a regular surface are points where the tangent plane has specially
high ’contact’ with the surface, i.e. A2 contact . Alternatively, they can be interpreted as
the points which separate the elliptic and hyperbolic regions of the surface, namely, points or
curves where the Gaussian curvature is zero.
20.4.4
Ridge points
Contact functions
The sphere of curvature is a sphere centered at one of the centers of principal curvature and
having a radius equal to the corresponding radius of curvature. Consider a sphere centered at
(0, 0, r) and passing through the origin such that it is tangent to the surface r there. Then the
equation of the sphere is
x2 + y 2 + (z − r)2 = r 2
(20.53)
The contact function is deﬁned with substitution of z = h(x, y).
g(x, y) = x2 + y 2 + (h(x, y) − r)2 − r 2 = 0
(20.54)
Expanding g(x, y) as a power series in x and y gives
r
g(x, y) = x2 (1 − rρ1 ) + y 2(1 − rρ2 ) − (b0 x3 + 3b1 x2 y + 3b2 xy 2 + b3 y 3 )
3
r
ρ1
ρ2
4
−
(c0 x + · · ·) + ( x2 + y 2 )2 +· · ·
12
2
2
(20.55)
Deﬁnition
• The ridge point of a smooth surface is a point where one of the sphere of curvature has
more degenerate contact than the usual A2 contact and the curve of intersection becomes
1
ρ1 g(x, y) = y 2 (ρ1 − ρ2 ) − (3b1 x2 y + 3b2 xy 2 + b3 y 3 )
3
ρ3
1
− (c0 x4 + · · ·) + 1 x4 + · · ·
12
4
22
⎦2
⎤
b2
b3
b1
x2 −
xy −
y2
= (ρ1 − ρ2 ) y −
2(ρ1 − ρ2 )
2(ρ1 − ρ2 )
6(ρ1 − ρ2 )
1
(3b2 + (ρ1 − ρ2 )(c0 − 3ρ31 ))x4 +· · ·
(20.56)
−
12(ρ1 − ρ2 ) 1
– If r = �11 (or r = �12 ) and b0 = 0 (or b3 = 0), then the contact function (20.55)
becomes A3 singularity.
– The coeﬃcient P1 = 3b21 + (ρ1 − ρ2 )(c0 − 3ρ31 ) should not be zero.
• A point is a ridge point relative to a principal direction p if and only if the principal
curvature ρ1 corresponding to p has an extremum along the line of curvature in the
direction p.
• Ridge points are the pre-image of cuspidal edges on a focal surface of a smooth surface.
20.4.5
Sub-parabolic points
• The point on which one principal curvature has an extremum relative to motion along
the other line of curvature is called the sub-parabolic point on the surface.
• It is the pre-image of a parabolic point on the focal surface.
23
Bibliography
 G. Aumann. Interpolation with developable Bézier patches. Computer Aided Geometric
Design, 8(5):409–420, November 1991.
 M. V. Berry and J. H. Hannay. Umbilic points on Gaussian random surfaces. Journal of
Physics A., 10(11):1809–1821, 1977.
 J. W. Bruce, P. J. Giblin, and F. Tari. Parabolic curves of evolving surfaces. International
Journal of Computer Vision, 17(3):291–306, 1996.
 J. W. Bruce, P. J. Giblin, and F. Tari. Ridges, crests and sub-parabolic lines of evolving
surfaces. International Journal of Computer Vision, 18(3):195–210, 1996.
 J. S. Chalfant and T. Maekawa. Design for manufacturing using B-spline developable
surfaces. Journal of Ship Research, 42(3):207–215, 1998.
 G. Dahlquist and ˚
A. Bj¨orck. Numerical Methods. Prentice-Hall, Inc., Englewood Cliﬀs,
NJ, 1974.
 I. D. Faux and M. J. Pratt. Computational Geometry for Design and Manufacture. Ellis
Horwood, Chichester, England, 1981.
 J. H. Ferziger. Numerical Methods for Engineering Applications. Wiley, 1981.
 W. H. Frey and D. Bindschadler. Computer-aided design of a class of developable Bézier
surfaces. R&D Publication 8057, General Motors, September 1993.
 P. W. (editor) Hallinan. Two and Three Dimensional Patterns of the Face. A.K. Peters,
Ltd., Wellesley, Massachusetts, 1999.
 R. Kimmel, A. Amir, and A. M. Bruckstein. Finding shortest paths on surfaces using
level sets propagation. IEEE Transactions on Pattern Analysis and Machine Intelligence,
17(6):635–640, June 1995.
 K. H. Ko, T. Maekawa, N. M. Patrikalakis, H. Masuda, and F.-E. Wolter. Shape intrinsic
ﬁngerprints for free-form object matching. In G. Elber and V. Shapiro, editors, 8th ACM
Symposium on Solid Modeling and Applications, Seattle, WA, June 2003, In press.
 E. Kreyszig. Diﬀerential Geometry. University of Toronto Press, Toronto, 1959.
 T. Maekawa. Computation of shortest paths on free-form parametric surfaces. Journal of
Mechanical Design, Transactions of the ASME, 118(4):499–508, December 1996.
 T. Maekawa and J. S. Chalfant. Computation of inﬂection lines and geodesics on devel­
opable surfaces. Mathematical Engineering in Industry, 7(2):251–267, 1998.
 T. Maekawa and J. S. Chalfant. Design and tessellation of B-spline developable surfaces.
Journal of Mechanical Design, Transactions of the ASME, 120(3):453–461, September
1998.
 T. Maekawa and N. M. Patrikalakis. Interrogation of diﬀerential geometry properties for
design and manufacture. The Visual Computer, 10(4):216–237, March 1994.
 T. Maekawa, F.-E. Wolter, and N. M. Patrikalakis. Umbilics and lines of curvature for
shape interrogation. Computer Aided Geometric Design, 13(2):133–161, March 1996.
 M. J. Mancewicz and W. H. Frey. Developable surfaces: Properties, representations and
methods of design. R&D Publication 7637, General Motors, 1992.
 R. Morris. The sub-parabolic lines of a surface. In G. Mullineux, editor, The Mathematics
of Surfaces VI, Proceedings of the 6th IMA Conference on Mathematics of Surfaces VI,
pages 79–102, Oxford, UK, 1996. Clarendon Press.
 N. M. Patrikalakis and T. Maekawa. Shape Interrogation for Computer Aided Design and
Manufacturing. Springer-Verlag, Heidelberg, February 2002.
 I. R. Porteous. Geometric Diﬀerentiation for the intelligence of curves and surfaces.
Cambridge University Press, Cambridge, 1994.
 E. C. Sherbrooke and N. M. Patrikalakis. Computation of the solutions of nonlinear
polynomial systems. Computer Aided Geometric Design, 10(5):379–405, October 1993.
 D. J. Struik. Lectures on Classical Diﬀerential Geometry. Addison-Wesley, Cambridge,
MA, 1950.
```