Parametrization

Download Report

Transcript Parametrization

A Note on Subdivision
Kwan Pyo Ko
Dongseo University
[email protected]
What is Subdivision?
•
•
Subdivision produces a smooth curve or surface as the limit of a
sequence of successive refinements
We can repeat a simple operation and obtain a smooth result after
doing it an infinite number of times
pj + 1 = Spj
X
(Sp) a =
®a¡
b
2bpb
Subdivision Surfaces
history
Classical schemes:
•
•
•
•
•
•
•
•
•
•
De Rahm(1947)
Chaikin(1974)- An algorithm for high speed curve generation
Riesenfeld(1975)- On Chaikin’s algorithm
Catmull-Clark (1978)- Recursively generated B-spline surfaces on arbitrary topological meshes
Doo-Sabin (1978)- Behavior of recursive division surfaces near extraordinary points
Ball-Storry(1986)- A matrix approach to the analysis of recursively generated B-spline surfaces
Loop (1987)- Smooth subdivision surfaces based on triangles (new domain, eigen analysis)
Dyn,Levin,Gregory(1987)- A 4-point interpolatory subdivision scheme for curve design
(1990)- A butterfly subdivision scheme for surface interpolation with tension control
Reif(1995)- A unified approach to subdivision algorithms near extraordinary vertices.
history
New Schemes:
Kobbelt(1996)p Interpolatory subdivision on open quadrilateral nets with arbitrary topology
(2000)3 subdivision
Velho(2000)- Quasi 4-8 subdivision
Velho-Zorin(2000)- 4-8 subdivision
p
Dogson,Ivrissimtzis,Sabin(2003)-pCharacteristic of dual triangular
subdivision
3
(2004)5 subdivision
Non-uniform schemes:
Warren(1995)- Binary subdivision schemes for functions of irregular knot sequences
Gregory,Qu(1996)- Non-uniform corner cutting
Sederberg,Sewell,Sabin(1998)- Non-uniform recursive subdivision surfaces
Dyn(1999)- Using Laurent polynomial representation for the analysis of non-uniform binary SS
Non-stationary schemes:
Dyn,Levin(1995)- Analysis of asymptotically equivalent binary subdivision schemes
Morin,Warren,Weimer(2001)- A subdivision scheme for surfaces of revolution
Dyn,Levin,Luzzatto(2003)- Non-stationary interpolatory SS reproducing spaces of exponential polys.
Schemes
• Catmull-Clark (1978)
• Doo-Sabin (1978)
• Loop (1987)
• Butterfly (1990)
• Kobbelt (1996)
•p Mid-edge (1996 / 1997)
• 3 Subdivision (2000)
Why Subdivision?
• Arbitrary topology
• Multi-resolution
• Simple/Efficient code
• Construct Wavelet
• Analysis
Chaikin’s Algorithm
pk2i+ 1 =
3 k 1 k
pi + pi + 1
4
4
pk2i++11 =
1 k 3 k
pi + pi + 1
4
4
-converges to the quadratic B-Spline.
Cubic Spline Algorithm
pk2i+ 1 =
pk2i++11
1 k 1 k
p + pi + 1
2 i
2
1 k 3 k
1 k
= pi + pi + 1 + pi + 2
8
4
8
-converges to the cubic B-Spline.
4-point Interpolatory Scheme
(N. Dyn, D.Levin and J.Gregory)
pk2i+ 1 = pki
µ
pk2i++11 =
¶
1
+ w (pki + pki+ 1 ) ¡ w(pki¡
2
-continuous for jwj <
1
-C for 0 < w < 18
1
4
1
+ pki+ 2 )
Deslauriers-Dubuc Scheme
• Finding a minimally supported mask such that
(2N+1)th degree polynomial filling property (de
Villiers, Goosen and Herbst)
X
aj ¡
k
j
p(k)
=
p(
);
2k
2
j 2 Z; p 2 ¼2N + 1
• DD mask has the explicit formulation
µ
a2j + 1
¶
µ
¶
j
N + 1 2N + 1 (¡ 1)
2N + 1
= 4N + 1
; j = ¡ N ¡ 1; : : : ; N
2
N
2j + 1 N + j + 1
a2j = ±j ;0 ;
aj = 0;
j = ¡ N; : : : ;N
jj j ¸ 2N + 2
Polynomial Reproducing
• DD scheme obtained the mask by using
polynomial reproducing property
• 4-point DD scheme:
f 2ik + 1 = f ik ;
f 2ik ++ 11 =
9 k
1 k
(f i + f ik+ 1 ) ¡
(f
16
16 i ¡
1
+ f ik+ 2 ):
Ternary Interpolatory Subdivision
Scheme
pj3j+ 1 = pij
pj3j++11 = apij ¡
i + cpi
i
+
bp
+
dp
1
j
j+1
j+2
pj3j++12 = dpij ¡
i + bpi
i
+
cp
+
ap
1
j
j+1
j+2
where the weights are given by
a= ¡
C 2 for
1
1
13 1
7
1
1
1
¡ w; b =
+ w; c =
¡ w; d = ¡
+ w:
18 6
18 2
18 2
18 6
1
15
< w<
1
9
Mask of binary 2n-point SS
• Y.Tang, K.P.Ko and B.G.Lee obtained the mask of
interpolatory symmetric SS by using symmetry and
the necessary condition for smoothness.
1
[w + ; ¡ w]
2
9
1
[2w +
; ¡ 3w ¡
; w]
16
16
[5w +
[14w +
75
25
3
; ¡ 9w ¡
; 5w ¡
; ¡ w]
128
256
256
1225
245
49
5
; ¡ 28w ¡
; 20w ¡
; ¡ 7w ¡
; w]
2048
2048
2048
2048
General form for mask of 2n-point ISSS
• The coefficients of w can be expressed in a matrix
form
2
6
6
6
6
6
6
A= 6
6
6
6
6
4
1
1
2
5
14
42
..
.
0
¡ 1
¡ 3
¡ 9
¡ 28
¡ 90
..
.
0
0
1
5
20
75
..
.
0
0
0
¡ 1
¡ 7
¡ 35
..
.
¢¢¢
¢¢¢
¢¢¢
¢¢¢
0
0
0
0
1
9
..
.
0
0
0
0
0
¡ 1
..
.
¢¢¢
¢¢¢
¢¢¢
¢¢¢
¢¢¢
¢¢¢
..
.
3
0
0
0
0
0
0
0
¢¢¢ ¢¢¢ ¢¢¢ (¡ 1) n ¡
7
7
7
7
7
7
7
7
7
7
7
5
1
2
6
6
A= 6
4
A 11
A 21
..
.
A n1
0
A 22
..
.
¢¢¢
¢¢¢
..
.
0
0
..
.
A n2
¢¢¢ A nn
3
7
7
7:
5
• We found out that matrix A satisfied the particular
rule.
8
n¡ 1
n¡ 1
A
¡
A
>
i
i+ 1
>
<
n
¡
1
(¡ 1)
A ni =
n¡ 1
n¡ 1
n¡ 1
2A
¡
A
¡
A
>
>
i
i¡ 1
i+ 1
:
0
i
i
i
i
=
=
=
>
1; n = 2; 3 : : :
n
2; 3 : : : ; n; n = 3; 4; : : :
n:
Relation between 2n-point ISSS and
DD scheme
• We have the mask of 2n-point ISSS:
I SSS;2n
aI2iSSS;2n
=
a
¡ 1
¡ 2i + 1
D D ;2n ¡
aI2iSSS;2n
=
a
¡ 1
2i ¡ 1
D ;2
aD
1
1
= ;
2
2
+ A ni w;
i = 1; 2; 3 : : : ; n; n 2 N + ;
D ;2
D D ;2n ¡
aD
=
¢¢¢=
a
3
2n ¡ 1
2
= 0
Example (for n=3)
aI1SSS;6
=
aI3SSS;6
=
aI5SSS;6
=
9
+ 2w;
16
D ;4
3 w = ¡ 1 ¡ 3w;
aD
+
A
2
3
16
D ;4
aD
+ A 33 w = w:
5
D ;4
3w =
aD
+
A
1
1
we get 6-point ISSS:
1
9
9
1
[w; ¡
¡ 3w;
+ 2w;
+ 2w; ¡
¡ 3w; w]:
16
16
16
16
Matrix formula for the mask of 2n-point
DD scheme
• The formula can be written in the form:
2
6
6
a= 6
4
D ;2n
aD
1
D ;2n
aD
3
..
.
D ;2n
aD
2n ¡ 1
3
2
A 11
7 6 0
7 6
7 = 6 ..
5 4 .
0
wi =
24i ¡
..
.
0
µ
i
3
A 21
A 22
¢¢¢
¢¢¢
..
.
0
A n1
A n2
..
.
A nn
¶
2i ¡ 1
1
i ¡ 1 2i ¡ 1
32
76
76
76
54
w1
w2
..
.
wn
3
7
7
7 = AT ¤ w :
5
Example (for n=3)
2
A= 4
A 11
A 21
A 31
0
A 22
A 32
3
2
3
0
1 0 0
0 5 = 4 1 ¡ 1 0 5;
A 33
2 ¡ 3 1
1 1 3
wn = [w1 ; w2 ; w3 ] = [ ; ;
]
2 16 256
we obtain 6-point DD scheme:
[
3
25 150 150
25 3
;¡
;
;
;¡
;
]:
256 256 256 256 256 256
Mask of D-D scheme
2 (n= 1)
4 (n= 2)
6 (n= 3)
8 (n= 4)
10 (n= 5)
1
2
9
16
150
256
1225
2048
19845
32768
0
1
¡ 16
25
¡ 256
245
¡ 2048
2250
¡ 16384
0
0
3
256
49
2048
567
16384
0
0
0
¡
¡
5
2048
405
16384
0
0
0
0
35
65536
Generalization of Mask (G.J.Yoon)
+3
• Consider the problem of finding mask a = f aj g2N
j = ¡ 2N ¡
reproducing polynomial of degree (2N+1)
X
k
j
aj ¡ 2k p(k) = p( );
2
j 2 Z;
We let
v = a2N + 2 ;
w = a2N + 3
p 2 ¼2N + 1 :
3
For j= -N-1,¢¢¢; N ;
we get the mask
µ
a2j = ±j ;0 + (¡ 1) j + N + 1
a2j + 1
=
+
¶
2N + 2
v:
N+ j + 1
µ
¶
µ
¶
N + 1 2N + 1 (¡ 1) j
2N + 1
24N + 1
N
2j + 1 N + j + 1
µ
¶
2N
+
1
(2N + 2)(2j + 1)
j
+
N
+
1
(¡ 1)
w
N + j + 1 (N + j + 2)(N ¡ j + 1)
Remark
• We obtain symmetric SS which reproduce all
polynomial degree (2N+1) and which is not
interpolatory.
• In case v=0, it becomes (2N+4) interpolatory SS.
• In case v=w=0, it becomes (2N+2) DD scheme.
Example
• For N=1, we get
1
9
9
1
[w; v; ¡
¡ 3w; ¡ 4v;
+ 2w; 1+ 6v;
+ 2w; ¡ 4v; ¡
¡ 3w; v; w]:
16
16
16
16
• In case v=0, we have
[w; 0;
¡
1
9
9
¡ 3w; 0;
+ 2w; 1;
+ 2w; 0;
16
16
16
¡
1
¡ 3w; 0; w]:
16
• In case v=w=0, it becomes 4-point DD scheme
1
9
9
[¡
; 0;
; 1;
; 0;
16
16
16
1
¡
]:
16
Approximation Order
Definition A subdivision scheme S has approximation
order n if for initial data f i0 = F (i h) with smooth F
enough
j(F ¡ S1 f 0 )(x)j · Chn
Theorem The approximation order of a convergent
SS S, which is exact for ¼n , is n+1.
Q) Determine the approximation order of the 4-point
DD scheme.
Subdivision Zoo
Classification :
• stationary or non-stationary
• binary or ternary
• type of mesh (triangle or quadrilateral)
• approximating or interpolating
• linear or non-linear
Classification
• Vertex insertion (primal)
– Insert a vertex on the interior of each edge and
one on the interior of each face for quads
– Loop, Kobbelt, Catmull-Clark, Modified Butterfly
• Corner cutting (dual)
– Insert a face in the middle of each old face and
connect faces in adjacent old faces
– Doo-Sabin
Classification
• Interpolating
– Can control the limit surface in a more intuitive
manner
– Can simplify algorithms (efficient)
• Approximating
– Higher quality surfaces
– Faster convergence
Face split (primal type)
Triangular meshes
2)
approximating
Loop (C
interpolating
Butterfly (C
1)
Quad.meshes
Catmull-Clark(C
Kobbelt (C
2)
1)
Vertex split (dual type)
Quad. meshes
approximating
1
1
Doo-Sabin (C ) , Midedge (C )
Binary Subdivision of B-Spline
• Univariate B-Spline :
(¤)
Sr (u)
X
=
dri N r (u ¡ i );
i2Z
where N r : normalized B-Spline.
Properties
P
•
•
•
•
•
N r (u ¡ i ) = 1
Partition of unity : i
r
Positivity : N (u) ¸ 0
r
Local support : N (u ¡ i ) = 0 if u 2= [i ; i + r + 1]
Continuity : N r (u) 2 C ( r ¡ 1)
u¡ i
i + r + 1¡ u N r ¡ 1 (u ¡ i ¡ 1)
Recursion : N r (u ¡ i ) = r N r ¡ 1 (u ¡ i ) +
r
Idea behind Subdivision
• Rewrite the curve (*) as a curve over a refined knot
sequence Z=2:
• (*) becomes
Sr (u)
X
=
d^rj N r (2(u ¡ j ))
j 2 Z =2
• Determine
d^rj
A single B-Spline can be
decomposed into similar BSpline of half the support.
• This results in
N r (u)
X
crj N r (2(u ¡ j ));
=
j 2 Z =2
crj
where
=
d^rj =
¡
2¡ r r 2j+ 1
X
¢
crj ¡ i dri ; j 2 Z=2
i2Z
• For exampleX r = 2
d^20
c2¡ i d2i = ¢¢¢+ (3=4)d2¡ 1 + (1=4)d20 + ¢¢¢
=
i2Z
d^21=2
=
¢¢¢+ (1=4)d2¡ 1 + (3=4)d20 + ¢¢¢
Chaikin’s algorithm
Tensor Product B-Spline Surface
Sr ;s (u)
X
=
dri ;s N r ;s (u ¡ i)
i2 Z 2
A tensor product B-Spline is the product of two
independently univariate B-Splines, i.e
N r ;s (u ¡ i) = N r (u ¡ i )N s (v ¡ j )
d^rj ;s
X
=
r ;s
2
crj ;s
d
¡ i i ; j 2 Z =2
i2Z 2
crj ;s
•
•
=
cri csj
=
2¡
( r + s)
µ
¶µ
¶
r + 1 s+ 1
2i
2j
r = s= 2
9
3
2;2
¢¢¢+ ( )d2;2
+
(
)
+
d
0;¡ 1 + ¢¢¢
16 ¡ 1;¡ 1
16
3
1
2;2
¢¢¢+ ( )d2;2
+
(
)
+
d
0;0 + ¢¢¢
16 ¡ 1;0
16
The mask set :
Example 1
d^2;2
=
0;0
• Example 2
r = s= 3
The mask for bi-cubic tensor product B-Spline
Triangular Spline
• A triangular spline surface :
(¤)
Sr ;s;t (u)
X
=
dri ;s;t N r ;s;t (u ¡ i);
u 2 R2; i 2 Z 2
i
where
N r ;s;t (u) : a normalized triangular spline of degree (r+s+t-2)
Subdivision of Triangular Spline
• The surface (*) can be rewritten over the refine grid.
Sr ;s;t (u)
X
=
d^rj ;s;t N r ;s;t 2(u ¡ j )
j
• A single triangular spline is decomposed into splines
of identical degree over the refined grid.
N r ;s;t (u)
X
=
j 2 Z =2
crj ;s;t N r ;s;t (2(u ¡ j ));
d^rj ;s;t
X
crj ¡;s;ti dri ;s;t
=
i2 Z
Where
crj ;s;t = 2¡
( r + s+ t )
Xt µ
k= 0
r
2i ¡ k
¶µ
¶µ ¶
s
t
2j ¡ k
k
The subdivision masks for the triangular spline N
2;2;2 (u)
Doo-Sabin Scheme
• Approximating Scheme
• Tensor Product Quadratic B-Spline
• Continuity
– C1 regular regions and extraordinary vertices
• Dual Quadrilateral
Doo/Sabin algorithm
Problem
Subdivision for tensor product quadratic B-spline
surface has rigid restrictions on the topology.
Each vertex of the net must order 4.
This restriction makes the design of many
surfaces difficult
Doo/Sabin presented an algorithm that
eliminated this restriction by generalizing the
bi-quadratic B-Spline subdivision rules to
include arbitrary topologies.
P’3
P0
P’’0
P3
P’’3
(P0 \ ; P1 \ ; P2 \ ; P3 \ ) T
= S4D S (P0 ; P1 ; P2 ; P3 ) T
P’0
P’2
P’b
2
P’’1
P1
P’’2
P’1
Doo-Sabin Scheme
S4D S
P2
9
1 6
6 3
=
16 4 1
3
3
9
3
1
1
3
9
3
3
3
1 7
7
3 5
9
• The subdivision masks for bi-quadratic B-Spline :
• Geometric view of bi-quadratic B-Spline subdivision :
the new points are centroids of the sub-face formed
by the face centroid, a corner vertex and the two midedge points next to the corner.
arbitrary topology
• For an n-sided face Doo/Sabin used subdivision
matrix SnD S = (®i j ) n £ n ;
®i j
=
5+ n
;
4n
i= j
³
3 + 2 cos
®i j
=
4n
2¼( i ¡ j )
n
´
;
i6
= j
• As subdivision proceeds, the refined control point
mesh becomes locally rectangular everywhere
except at a fixed number of points.
• Since bi-quadratic B-splines are C 1 , the surfaces
generated by the Doo/Sabin algorithm are locally C 1
Maple Code:
• http://www.mrl.nyu.edu/projects/subdivision/mapl
e/doosabin.pdf
Catmull-Clark Scheme
• Approximating Scheme
• Tensor Product Bicubic B-spline
• Continuity
- C2 regular regions
– C1 extraordinary vertices
• Primal Quadrilateral
Catmull/Clark Algorithm
P42
P41
x
x
P31
P43
x
x
x
P21
x
x
x
P33
q22
x
q11
P11
x
x
q12
P12
x
x
x
P22
x
x
x
P32
x
P44
P23
x
x
x
x
P34
x
x
P24
x
P13
q11 : New face points
q12 : New edge points
q22 : New vertex points
P14
• New face points :
q11
P11 + P12 + P21 + P22
=
4
• New edge points :
q12 =
C+ D
2
+
P1 2 + P2 2
2
2
;
C = q11 ; D = q13
• New vertex points :
q22 =
Q R P22
+
+
4
2
4
q11 + q13 + q31 + q33
Q=
4
·µ
¶ µ
¶ µ
¶ µ
¶¸
1
p22 + p12
p22 + p21
p22 + p32
p22 + p23
R=
+
+
+
4
2
2
2
2
• The subdivision masks for bi-cubic B-Spline :
Approach : generalization of bi-cubic B-Spline
arbitrary topology
• New face points : the average of all of the old
points defining the face.
• New edge points : the average of the mid points of
the old edge with average of the two new face.
1Q
4
+
1R
2
+
1 S;
4
• New vertex points :
Q : the average of the new face points of all faces
sharing an old vertex point.
R : the average of the midpoints of all old edges
incident on the old vertex point.
S : the old vertex point.
Note : tangent plane continuity was not maintained at
extraordinary points.
1
2
N ¡ 3
S^ =
Q+
R+
S
N
N
N
N : order of the vertex
tangent plane continuity at extraordinary points.
Maple Code:
• http://www.mrl.nyu.edu/projects/subdivision/mapl
e/catmullclark.pdf
Butterfly Scheme
• Interpolating Scheme
• General Scheme
• Continuity
– C1 regular regions
• Primal Triangular Quadrisection
Butterfly scheme
8
X
1 k
k
k
k
k
qe = (pe;1 + pe;2 ) + 2w(pe;3 + pe;4 ) ¡ w
pke;j
2
j=5
pki + 1 = pki [ qek
The mask of the butterfly scheme:
The mask of the butterfly scheme:
Well-known Fact
On the three directional grid, if the values given are
constant in one of the three grid directions
(1,0),(0,1),(1,1), then the butterfly scheme inserts
new values which are constant in the same
direction and could be computed by univariate 4point scheme along the other two grid directions.
For a new vertex in the (1,0) direction, the rule is
f 2ik ++ 11;j
=
¡
1 k
(f i ;j + f ik+ 1;j ) + 2w(f ik+ 1;j + 1 + f ik;j ¡ 1 )
2
w(f ik+ 2;j + 1 + f ik;j + 1 + f ik¡ 1;j ¡ 1 + f ik+ 1;j ¡ 1 )
• For a new vertex in the direction (0,1)
+1
f ik;2j
+1
1 k
(f i ;j + f ik;j + 1 ) + 2w(f ik+ 1;j + 1 + f ik¡
2
w(f ik+ 1;j + 2 + f ik+ 1;j + f ik¡ 1;j ¡ 1 + f ik¡
=
¡
1;j
)
1;j + 1 )
• For (1,1)
f 2ik ++ 11;2j + 1
=
¡
1 k
(f i ;j + f ik+ 1;j + 1 ) + 2w(f ik+ 1;j + f ik;j + 1 )
2
w(f ik+ 2;j + 1 + f ik+ 1;j + 2 + f ik¡ 1;j + f ik;j ¡ 1 )
• Under the assumption
k
f ik;j = f 0;j
• We get from the first insertion rule
k
f 2ik ++ 11;j = f 0;j
• For a new vertex (0,1) direction we get
+1
f ik;2j
+1 = (
1
k + f k
k
k
+ w)(f 0;j
)
¡
w(f
+
f
0;j + 1
0;j + 2
0;j ¡ 1 )
2
• The third insertion rule gives the same rule as above.
Maple Code:
• http://www.mrl.nyu.edu/projects/subdivision/mapl
e/butterfly.pdf
Loop Scheme
• Approximating Scheme
• Three Directional Box-Spline
• Continuity
– C2 regular regions
– C1 extraordinary vertices
• Primal Triangular Quadrisection
Loop Scheme
• A generalized triangular subdivision surface.
• The subdivision masks for N 2;2;2 (u)
• mask A generates new control points for each vertex
• mask B generates new control points for edge of the
original regular triangular mesh.
• Mask B : generalization is to leave this subdivision
rule intact (why?)
• Mask A : The new vertex point can be computed
as a convex combination of the old vertex and all
old vertices that share an edge with it.
5
3
^
V = V + Q;
8
8
V : the old vertex point.
Q : the average of the old points that
share an edge with V.
This same idea may be applied to an arbitrary
triangular mesh.
• Note : tangent plane continuity is lost at the
extraordinary points.
• Loop scheme
^ = ®N V + (1 ¡ ®N )Q;
V
where
®N =
µ
¶2
3 1
2¼
3
+ cos
+
8 4
N
8
- curvature continuity at
regular point.
- tangent plane continuity
at extaordinary point.
Maple Code
• http://www.mrl.nyu.edu/projects/subdivision/mapl
e/loop.pdf
Mid-Edge Scheme
P’3
P0
P3
P’’3
P’’0
P’0
P’2
P’’1
P1
S4M E
P’’2
P’1
(P0 \ ; P1 \ ; P2 \ ; P3 \ ) T
= S4M E (P0 ; P1 ; P2 ; P3 ) T
2
3
2 1 0 1
16
1 2 1 0 7
6
7
= 4
4 0 1 2 1 5
1 0 1 2
• For an n-sided face,
subdivision matrix :
SnM E = (¯i j ) n £ n ;
P2
1 + cos 2¼( ni ¡
¯i j =
n
1)
Circulant matrix
2
6
6
SnG = 6
4
a0
an ¡ 1
..
.
a1
a0
..
.
a1
a2
¢¢¢ an ¡ 1
¢¢¢ an ¡ 2
..
..
.
.
¢¢¢ a0
3
7
7
7
5
G
eigenvalues of Sn can be calculated by
evaluating the polynomial.
Pn (z) = a0 + a1 z + ¢¢¢+ an ¡ 1 zn ¡ 1 ;
z = wj ;
w= e
i 2¼
n
;
j = 0; 1; ¢¢¢; n ¡ 1
Further Subdivision Schemes
•
•
•
•
•
•
•
•
Non-uniform scheme.
Shape preserving scheme.
Hermite-type scheme.
Variational scheme.
Quasi-linear scheme.
Poly-scale scheme.
Non-stationary scheme.
Reverse subdivision scheme.
Convexity Preserving ISS
•
A constructive approach is used to derive
convexity preserving subdivision scheme.
f 2ik + 1
=
f 2ik ++ 11
=
f ik
¢
¡ k
¢
1¡ k
k
k
k
k
f i + f i + 1 ¡ F1 f i ¡ 1 ; f i ; f i + 1 ; f i + 2
2
1. interpolatory.
2. local : four points scheme.
define the first and second differences.
df i
di
=
=
f i+ 1 ¡ f i
d2 f i = f i + 1 ¡ 2f i + f i ¡
1
f 2ik + 1
=
f 2ik ++ 11
=
f ik
µ
¶
¡
¢
1 k
1 k
f i + f ik+ 1 ¡ F2
(f i + f ik+ 1 ); df ik ; dki ; dki+ 1
2
2
3. invariant under addition of affine functions.
(★)
f 2ik + 1
=
f 2ik ++ 11
=
f ik
¢
1¡ k
k
f i + f i + 1 ¡ F (dki ; dki+ 1 )
2
F : subdivision function
4. continuous
5. homogeneous, i.e. , F (¸ x; ¸ y) = ¸ F (x; y)
6. symmetric
• Theorem 1 (Convexity)
A subdivision scheme of type (*) satisfying
conditions 1 to 6 is convex preserving for all
convex data
F satisfies
0 · F (x; y) ·
Note : if F=0
1
minf x; yg; 8x; y ¸ 0
4
linear SS.
only C 0
(Question)
under what conditions, SS(*) with conditions 1 to
6 and convexity condition generate continuously
differentiable limit functions.
Answer
• Theorem 2 (Smoothness)
Under the same conditions hold as in Theorem 1.
The scheme given by
f 2ik + 1
=
f 2ik ++ 11
=
f ik
¢ 1
1¡ k
k
f i + f i+ 1 ¡
2
4
1
d ki
1
+ dk1
i+ 1
continuously differentiable function which is
convex and interpolate the data
• Theorem 3 (Approximation order)
The convexity preserving subdivision scheme has
approximation order 4.
Analysis of convergence and
smoothness of binary SS by the
formalism of Laurent polynomials
A binary univariate SS:
f ik + 1
X
=
ai ¡
2j
f jk
j 2Z
The general form of an interpolatory SS:
f 2ik + 1
=
f 2ik ++ 11
=
f ik
X
j 2Z
a1+ 2j f ik¡
j
For each scheme S, we define the symbol
X
ai zi
a(z) =
i2Z
Theorem 1 Let S be a convergent SS, then
X
(¤)
X
a2j =
j 2Z
a(¡ 1) = 0;
a2j + 1 = 1
j 2Z
a(1) = 2
Theorem 2 Let S denote a SS with symbol a(z)
satisfying (*). Then there exists a SS S1 with the
property
df
k
= S1 df
k¡ 1
k
k
k
k
k
where f k = Sk f 0 and df = f (df ) i = 2 (f i + 1 ¡ f i )g
Theorem 3 S is a uniformly convergent SS, if only if
1S
2 1 converges uniformly to the zero function
1 k
lim ( S1 ) f
k! 1 2
0
= 0
( 1+ z) m
2m
b(z). If Sb is convergent,
Theorem 4 Let a(z) =
1
0
m
then Sa f 2 C (R) for any initial data f 0.
Draft
Objective: obtain the mask of interpolatory subdivision
schemes (binary 2n-point scheme, ternary 4-point
scheme, butterfly scheme) using symmetry and
necessary condition for smoothness.
• A binary univariate SS:
f ik + 1
X
=
ai ¡
2j
f jk
j 2Z
The general form of an interpolatory SS:
f 2ik + 1
=
f 2ik ++ 11
=
f ik
X
j 2Z
a1+ 2j f ik¡
j
4-point interpolatory SS
• The 4 –point interpolatory SS:
f 2ik + 1
f 2ik ++ 11
f ik
a3 f ik¡
=
=
1
+ a1 f ik + a¡ 1 f ik+ 1 + a¡ 3 f ik+ 2
• The Laurent-polynomial of this scheme is
a(z) = a¡ 3 z¡
3
+ a¡ 1 z¡
1
+ 1 + a1 z + a3 z3
• By symmetry and necessary condition, we get
mask
a1 + a3 =
1
2
[¡ w; 12 + w; 12 + w; ¡ w]
6-point interpolatory SS
• The 6 –point interpolatory SS:
f 2ik + 1
f 2ik ++ 11
f ik
a5 f ik¡
=
=
2
+ a3 f ik¡
1
+ a1 f ik + a¡ 1 f ik+ 1 + a¡ 3 f ik+ 2 + a¡ 5 f ik+ 3
• The Laurent-polynomial of this scheme is
a(z) = a5 z¡
5
+ a¡ 3 z¡
3
+ a¡ 1 z¡
1
+ 1 + a1 z + a3 z3 + a¡ 5 f ik+ 3
• By symmetry and necessary condition, we get
mask
a1 + a3 + a5 =
24a5 + 8a3 +
1
2
1
2
= 0
[w; ¡
1
16
9 + 2w; 9 + 2w; ¡
¡ 3w; 16
16
1
16
¡ 3w; w]
Ternary interpolatory SS
• A ternary SS
f ik + 1
X
=
ai ¡
3j
f jk
j 2Z
• The general form of an interpolatory SS:
f 3ik + 1
=
f 3ik ++ 11
=
f ik
X
a1+ 3j f ik¡
k
a2+ 3j f ik¡
k
j 2Z
f 3ik ++ 12
X
=
j 2Z
For each scheme S, we define the symbol
X
a(z) =
ai zi
i2Z
Theorem 5 Let S be a convergent SS, then
X
(¤)
X
a3j =
j 2Z
X
a3j + 1 =
a3j + 2 = 1
j 2z
j 2Z
a(e2i ¼=3 ) = a(e4i ¼=3 ) = 0;
a(1) = 3
(**) Let us consider a n-ary convergent scheme. The
associated polynomial satisfies the properties.
a(1) = n;
a(wnp ) = 0; wnp = e
2i p ¼
n
; p 2 f 1; 2; : : : ; n ¡ 1g
Theorem 6 Let S denote a SS with symbol a(z)
satisfying (*). Then there exists a SS S1 with the
property
df
k
= S1 df
where f k = Sk f 0 and
df
k¡ 1
k
= f (df k ) i = 3k (f ik+ 1 ¡ f ik )g
Theorem 7 S is a uniformly convergent SS, if only if
1S
converges uniformly to the zero function
3 1
1
lim ( S1 ) k f
k! 1 3
0
= 0
Ternary 4-point interpolatory SS
• The ternary 4 –point interpolatory SS:
f 3ik + 1
f 3ik ++ 11
=
=
f ik
a4 f ik¡
1
+ a1 f ik + a¡ 2 f ik+ 1 + a¡ 5 f ik+ 2
f 3ik ++ 12
=
a5 f ik¡
1
+ a2 f ik + a¡ 1 f ik+ 1 + a¡ 4 f ik+ 2
• The Laurent-polynomial of this scheme is
a(z) = a¡ 5 z¡
5
+ a¡ 4 z¡
4
+ a¡ 2 z¡
2
+ a¡ 1 z¡
1
+ 1 + a1 z + a2 z2 + a4 z4 + a5 z5
• By symmetry and necessary condition, we get
mask
a1 + a2 + a4 + a5
3a2 ¡ 3a4 + 6a5
a4 + a5
• Let a5 = ¡
f 3ik ++ 11
f 3ik ++ 12
1
18
+
1
1
=
1
¡
9
1¹
6
1
¡
18
1
: [¡
+
18
: [¡
=
=
1 13
¹;
+
6 18
1 7
¹;
¡
6 18
1 7
¹;
¡
2 18
1 13
¹;
+
2 18
1
¹ ;¡
2
1
¹ ;¡
2
1
+
18
1
¡
18
1
¹]
6
1
¹]
6
Butterfly subdivision scheme
2
6
6
6
6
A= 6
6
6
6
4
¢
¢
¢
¢
¡ w
¡ w
¢
¢
¢
¡ w
¢
2w
¢
¡ w
¢
¡ w
2w
1
2
1
2
2w
¡ w
¢ ¡ w
¢ 2w
1
2
1
1
2
1
2
1
2
2w
¢ ¡ w
¢
¢
¡ w
¢
2w
¢
¡ w
¢
¢
¢
¡ w
¡ w
¢
¢
¢
¢
3
7
7
7
7
7
7
7
7
5
• The bivariate Laurent polynomial of this scheme:
X3
X3
a(z1 ; z2 ) =
ai ;j z1i z2j
i= ¡ 3 j = ¡ 3
• The symbol of the butterfly scheme:
a(z1 ; z2 ) =
c(z1 ; z2 )
=
+
1
(1 + z1 )(1 + z2 )(1 + z1 z2 )(1 ¡ wc(z1 ; z2 ))(z1 z2 ) ¡ 1 ;
2
2z1¡ 2 z2¡ 1 + 2z1¡ 1 z2¡ 2 ¡ 4z1¡ 1 z2¡ 1 ¡ 4z1¡ 1 ¡ 4z2¡ 1 + 2z1¡ 1 z2
2z1 z2¡ 1 + 12 ¡ 4z1 ¡ 4z2 ¡ 4z1 z2 + 2z12 z2 + 2z1 z22
• The verification that the scheme generates
requires checking the contractivity of three
schemes:
2(1 + z1 )b(z1 ; z2 ); 2(1 + z2 )b(z1 ; z2 ); 2(1 + z1 z2 )b(z1 ; z2 )
• Butterfly scheme satisfies:
1 1
w ¡ w = 0; w ¡ 2w + w = 0; ¡ w ¡ 2w + ¡
+ 2w + w = 0;
2 2
1
1
¡ + 1¡
= 0
2
2
Symmetric 8-point Butterfly SS
2
6
6
6
6
A= 6
6
6
6
4
¢ ¢
¢ ¢
¢ °
¢ ¢
° ¯
° ¢
¢ °
3
¢ ¢ ° ° ¢
° ¢ ¯ ¢ ° 7
7
¯ ® ® ¯ ° 7
7
® 1 ® ¢ ¢7
7
® ® ¯ ° ¢7
7
¯ ¢ ° ¢ ¢5
° ¢ ¢ ¢ ¢
(1; 2 = ®); (3; 4) = ¯); (5; 6; 7; 8 = ° )
• To converges to a surface with C 0 , we have
2° + ¯ = 0; ¡ 2® + 1 = 0
• This is the same mask of Butterfly scheme:
1
1; 2 =
2
3; 4 = 2w
5; 6; 7; 8 = ¡ w
Symmetric 10-point Butterfly SS
2
6
6
6
6
A= 6
6
6
6
4
¢ ¢
¢ ¢
¢ °
w ¢
° ¯
° ¢
w °
¢
°
¯
®
®
¯
°
w
¢
®
1
®
¢
w
° °
¯ ¢
® ¯
® ¢
¯ °
° ¢
¢ ¢
w
°
°
w
¢
¢
¢
3
7
7
7
7
7
7
7
7
5
(1; 2 = ®); (3; 4 = ¯); (5; 6; 7; 8 = ° ); (9; 10 = w)
• To converges to a surface with C 0 , we have
2° + ¯ = 0; ¡ 2® ¡ 2w + 1 = 0
• We find the mask of 10-point Butterfly scheme:
1; 2 =
1
¡ w
2
3; 4 = 2°
5; 6; 7; 8 = ¡ °
9; 10 = w
• This mask is exact with a modified Butterfly scheme
° =
1
+ w
16
Non-stationary Subdivision Scheme
• Construction an insertion rule by interpolation
with the span of the functions f 1; t; cost; sin tg
• Consider the k-th level insertion rule at the point
µ2¡ k ¡ 1based on the values at the points
¡ µ2¡ k ; 0; µ2¡ k ; 2µ2¡ k the solution of system leads to
the insertion rule
f 2ik ++ 11
=
+
¡ 1
k
k )
(f
+
f
i
¡
1
i
+2
16 cos2 (µ2¡ k ¡ 2 ) cos(µ2¡ k ¡ 1 )
(1 + 2 cos(µ2¡ k ¡ 1 )) 2
k + f k )
(f
i
i+ 1
16 cos2 (µ2¡ k ¡ 2 ) cos(µ2¡ k ¡ 1 )
Non-stationary Butterfly Scheme
• Objective: given a well-known non-stationary 4point scheme as the following rule:
f 2ik ++ 11
=
+
¡ 1
k
k )
(f
+
f
i+ 2
16 cos2 (µ2¡ k ¡ 2 ) cos(µ2¡ k ¡ 1 ) i ¡ 1
(1 + 2 cos(µ2¡ k ¡ 1 )) 2
k + f k )
(f
i+ 1
16 cos2 (µ2¡ k ¡ 2 ) cos(µ2¡ k ¡ 1 ) i
• Our objective is to extend this non-stationary 4point scheme to 2D Butterfly scheme, we denote
wk =
16 cos(µ2¡
k¡
1
2 ) cos(µ2¡
k ¡ 1)
Definition Two SSs f Sa g and f Sbk g are asymptotically
k
equivalent if
X1
kSa k ¡ Sbk k < 1
k= 0
where
kSa k k1 = maxf
$
S
X$
k)
ja(2®
j;
X
k)
ja(2®+
1 jg
Theorem 1 Let f Sa k gand f Sa g be two asymptotically
equivalent SSs having finite masks of the same
support. Suppose f Sa k gis non-stationary and f Sa g
is stationary. If f Sa g is C m and
X1
k= 0
2m k kSa k ¡ Sa k < 1
m
Then the non-stationary scheme f Sa k g is C .
k ¸ 0;
Lemma For
0 · µ · ¼=2
1
1
· wk ·
16
8
jwk ¡
$
S
$
1
C
j · 2k
16
2
The mask of f Sk g :
2
¢
6 ¢
6
6 ¢
6
6 ¢
6
6 ¡ wk
6
4 ¡ wk
¢
¢
¢
¡ wk
¢
2wk
¢
¡ wk
¢
¡ wk
2wk
1
2
1
2
2wk
¡ wk
¢ ¡ wk
¢ 2wk
1
2
1
1
2
1
2
1
2
2wk
¢ ¡ wk
¢
¢
¡ wk
¢
2wk
¢
¡ wk
¢
¢
¢
¡ wk
¡ wk
¢
¢
¢
¢
3
7
7
7
7
7
7
7
7
5
Subdivision operator S associated with butterfly
scheme has mask:
2
¢
¢
¢
6
¢
¢
¡ 1=16
6
6
¢
¡ 1=16
1=8
6
1
6
¢
¢
6
2
1
6 ¡ 1=16
1=8
6
2
4 ¡ 1=16
¢
1=8
¢
¡ 1=16 ¡ 1=16
3
¢ ¡ 1=16 ¡ 1=16
¢
¢
1=8
¢
¡ 1=16 7
7
1
1
7
1=8
¡
1=16
7
2
2
1
7
1
¢
¢
7
2
1
7
1=8
¡
1=16
¢
7
2
¢ ¡ 1=16
¢
¢ 5
¢
¢
¢
¢
Theorem The non-stationary butterfly scheme f Sk g is
asymptotically equivalent to the stationary butterfly
schemef Sg . Moreover, the limit function belong
to C 1 .
p
3 Subdivision (Kobbelt)
• Approximating Scheme
• Continuity
– C2 regular regions
– C1 extraordinary vertices
• Triangular Trisection
• Adaptive Refinement
p
3
Subdivision
• Subdivision schemes on triangle meshes are usually based
on the 1-to-4 split operation which inserts a new vertex for
every edge of the given mesh and then connects the new
vertices.
p
3
Subdivision
• This scheme is based on a split operation which first inserts
a new vertex for every face of the given mesh. Flipping the
original edges. Applying this scheme twice leads to a 1-to-9
refinement of the original mesh.
Smoothing Rules
• Two smoothing rules, one for the placement of the
newly inserted vertices and one for the relaxation
of the old ones.
• Reverse Engineering Process: instead of analyzing
a given scheme, we derive one which by
construction satisfies the known necessary criteria.
q :=
1
(p + pj + pk )
3 i
n¡ 1
1X
S(p) := (1 ¡ ®n )p + ®n
pi
n
i= 0
Subdivision Matrix
• When analyzing the eigen-structure of this matrix, it is not
suitable
all eigenvalues are complex
2
u v v
.
6 1 1 1
6
6
..
6
.
16 1 0
S= 6 . . .
..
3 6 .. ..
6
6
4 1 0
1 1 0
3
¢¢¢ v
¢¢¢ 0 7
7
.. 7
..
. . 7
7
7
..
..
.
. 0 7
7
7
..
..
.
. 1 5
¢¢¢ 0 1
v
0
..
.
u = 3(1 ¡ ®n );
v = 3®=n
Subdivision Matrix
2
The matrix S~ = RS
has its eigen-values:
1
1
n¡ 1
[9; (2 ¡ 3®n ) 2 ; 2 + 2 cos(2¼ ); ¢¢¢; 2 + 2 cos(2¼
)]
9
n
n
The necessary condition for C1:
.
¸ 1 = 1 > ¸ 2 = ¸ 3 > ¸ i ; i = 4; : : : ; n + 1
The choice for the eigen-values:
¸4 = ¸2
2
4 ¡ 2 cos(2¼=n)
) ®n =
9
2
1
6 0
6
6
R= 6
6 0
6 ..
4 .
0
3
0 ¢¢¢ 0 0
0 ¢¢¢ 0 1 7
7
7
..
..
1 .
. 0 7
7
..
..
.. . . 7
. 5
.
.
.
0 1 0
Boundaries
• Edge flipping at the boundaries is not possible.
• We have to apply a univariate tri-section rule to the boundary
polygon and connect the new vertices to the corresponding
interior ones such that a uniform 1-to-9 split is established
for each boundary triangle.
• We can obtain tri-section mask for cubic splines by
convolution
1
1
1
2
[1; 2; 3; 2; 1] ¤ ( [1; 1; 1]) =
[1; 4; 10; 16; 19; 16; 10; 4; 1]
3
3
27
Interpolatory
p
3 -Subdivision
Stencil for a new vertex and scheme:
qk + 1
32 k
1 k
2 k
k
k
k
k
=
(p1 + p2 + p3 ) ¡
(p4 + p5 + p6 ) ¡
(p7 + pk8 + pk9 + pk10 + pk11 + pk12 )
81
81
81
Interpolatory
p
3-Subdivision
Modification for extraordinary vertices:
qk + 1 = ®pk +
n
X¡ 1
®i pki
i= 0
For n ¸ 5
8
®= ;
9
®in
=
For
n= 3
For
n= 4
1
9
+
2
3
cos(2¼i =n) +
n
2
9
cos(4¼i =n)
8
7
¡ 2
; ®0 =
; ®1 = ®2 =
9
27
27
8
7
1
¡ 5
® = ; ®0 =
; ®1 = ®3 =
; ®2 =
9
36
27
36
®=
• Stencil for boundary subdivision
pk3i+¡ 11 = ¡
4 k
p
81 i ¡
2+
10 k
p
27 i ¡
1+
20 k
5 k
pi ¡
p
27
81 i + 1
pk3i = pki
pk3i++11 = ¡
5 k
pi ¡
81
1+
20 k 10 k
4 k
pi +
pi + 1 ¡
pi + 2
27
27
81
• Reflection vertices across the boundary of the mesh
Eigen Structure of SS
• Successive applying of a matrix relates to
eigenvectors and values.
• Applying of a matrix to a vector produces a
transformation on the vector
Sv = ¸ v
• Why are eigenvalues and vectors so important?
Sv; S2 v; S3 v; : : :
¸ v; ¸
2 v; ¸ 3 v; : : :
same limit
Affine Invariance
Sum of row elements must be unit, so
2
6
6
S6
4
1
1
..
.
1
3
2
7 6
7 6
7= 6
5 4
1
1
..
.
3
7
7
7
5
1
• What is the interpretation of above relation?
2
6
6
1= 6
4
1
1
..
.
1
3
7
7
7
5
is an eigenvector of S and ¸ = 1
is the corresponding eigenvalue
Subdivision Limit Position
• If
1 = ¸ 0 > ¸ i ; f i = 1; ng ¸ 0
S =
=
V¤V¡
£
v0
1
v1
then S is C 0.
2
¢¢¢vn
¤6
6
6
4
¸0
0
..
.
0
¸1
..
.
¢¢¢
¢¢¢
..
.
0
0
..
.
0
0
¢¢¢ ¸ n
32
76
76
76
54
v0¡ 1
v1¡ 1
..
.
vn¡ 1
3
7
7
7
5
• To find the limit neighborhood P 1 , we must
compute S1
S1
=
=
V¤1 V¡
£
1
1 v1
2
¢¢¢vn
¤6
6
6
4
32
v0¡ 1
v1¡ 1
1 0 ¢¢¢ 0
6
0 0 ¢¢¢ 0 7
76
.. .. . .
.. 7 6 ..
. . 54 .
. .
0 0 ¢¢¢ 0
vn¡ 1
3
2
P1
=
S1
P0
v0¡ 1
v0¡ 1
3
6
7
6
7 P0
= 4
¢¢¢ 5
v0¡ 1
3
7 6
7
7 6
7
7= 4
¢¢¢ 5
5
v0¡ 1
All of the vertices of the limit local neighborhood
converges to the same position
2
v0¡ 1
v0¡ 1
Subdivision Derivatives
The 1st derivatives of the subdivision manifold for a
parameter direction u defines:
@S
1 pgi+ 1 ¡ pgi
= lim g 0
0
g! 1 ¸ kp
@u
1
i + 1 ¡ pi k
We define the 2nd and 3rd derivatives
@2 S
1 (pgi+ 1 ¡ pgi ) ¡ (pgi ¡ pgi¡ 1 )
= lim g
0
0 k2
2
g! 1 ¸
@u
kp
¡
p
2
i+ 1
i
@3 S
1 (pgi+ 2 ¡ 2pgi+ 1 + pgi ) ¡ (pgi+ 1 ¡ 2pgi + pgi¡ 1 )
= lim g
0
0 k3
3
g! 1 ¸
@u
kp
¡
p
3
i+ 1
i
Example: Uniform Cubic Spline
• Eigen Decomposition of S:
2
6
16
S= 6
86
4
2
6
6
6
6
4
1
0
0
0
0
6
4
1
0
0
1
4
6
4
1
1 ¡ 1
1
1 ¡ 1=2 2=11
1
0
¡ 1=11
1 1=2
2=11
1
1
1
0
0
1
4
6
0
0
0
0
1
1
0
0
0
0
3
2
7
7
7 = V¤V¡
7
5
6
6
6
6
4
0
0
0
0
1
3
2
7
7
7
7
5
6
6
6
6
4
1
1 0
0
0
0
0 1=2 0
0
0
0 0 1=4 0
0
0 0
0 1=8 0
0 0
0
0 1=8
0 1=6
4=6
1=6 0
0 ¡ 1
0
1
0
0 11=6 ¡ 22=6 11=6 0
1 ¡ 3
3
¡ 1 0
0 ¡ 1
3
¡ 3 1
3
7
7
7
7
5
3
7
7
7
7
5
Sg
=
=
2
6
6
6
g
S = 6
6
6
4
6¸ g3
6
0
0
0
0
V ¤2g V ¡
1
6 0
6
V6
6 0
4 0
0
1
0
¸ g1
0
0
0
1+ 6¸ g1 + 11¸ g2 ¡ 18¸ g3
6
1+ 3¸ g1 + 2¸ g2
6
1¡ ¸ g2
6
1¡ 3¸ g1 + 2¸ g2
6
1¡ 6¸ g1 + 11¸ g2 ¡ 6¸ g3
6
0
0
¸ g2
0
0
0
0
0
¸ g3
0
0
0
0
0
¸ g3
4¡ 22¸ g2 + 18¸
6
4¡ 4¸ g2
6
4+ 2¸ g2
6
4¡ 4¸ g2
6
4¡ 22¸ g2 + 18¸
6
g
3
g
3
3
7
7
7 V¡
7
5
1
1¡ 6¸ g1 + 11¸ g2 ¡ 6¸ g3
6
1¡ 3¸ g1 + 2¸ g2
6
1¡ ¸ g2
6
1+ 3¸ g1 + 2¸ g2
6
1+ 6¸ g1 + 11¸ g2 ¡ 18¸ g3
6
3
0
0
0
0
6¸ g3
6
7
7
7
7
7
7
5
Limit Position
• We derive the formula for the limit position
2
S1
6
6
= 6
6
4
0
0
0
0
0
1=6
1=6
1=6
1=6
1=6
4=6
4=6
4=6
4=6
4=6
1=6
1=6
1=6
1=6
1=6
0
0
0
0
0
3
7
7
7
7
5
P 1 = S1 P 0
V0;0;0 =
1
V¡
6
2;¡
1;0 +
4
V¡
6
1;0;1 +
1
V0;1;2
6
1st Derivatives
pgi+ 1
g
p
Differencing
and i is the same as differencing
g
i
+
1
i
S
the corresponding row
and
of
2
¡ 1 1
0
0
6 0 ¡ 1 1
0
Du = 6
4 0
0 ¡ 1 1
0
0
0 ¡ 1
@Sg
= D u Sg
@u
2
6
@Sg
6
= 6
@u
4
¡ 2¸
2
0
0
0
g
3
¡ ¸ g1 ¡ 3¸ g2 + 6¸
2
¡ ¸ g1 ¡ ¸ g2
2
¡ ¸ g1 + ¸ g2
2
¡ ¸ g1 + 3¸ g2 ¡ 2¸
2
3
g
3
g
3
6¸ g2 ¡ 6¸ g3
2
2¸ g2
2
¡ 2¸ g2
2
¡ 6¸ g2 + 6¸ g3
2
¸ g1 ¡ 3¸ g2 + 2¸
2
¸ g1 ¡ ¸ g2
2
¸ g1 + ¸ g2
2
¸ g1 + 3¸ g2 ¡ 6¸
2
g
3
g
3
0
0 7
7
0 5
1
0
0
0
2¸ g3
2
3
7
7
7
5
• We derive the subdivision process is C1:
2
0
6 0
@S1
1 @Sg
= lim g
= 6
4 0
g! 1 ¸ 1 @
@u
u
0
¡
¡
¡
¡
1
2
1
2
1
2
1
2
0
0
0
0
@P 1
@S1 0
=
P
@u
@u
@V0;0;0
1
= ¡ V¡
u
2
2;¡
1
V
1;0 +
2 0;1;2
1
2
1
2
1
2
1
2
3
0
0 7
7
0 5
0
2nd Derivatives
The same finite differencing can be done to the 1st
derivatives matrix to compute 2nd derivatives:
2
@2 Sg
@Sg
= Duu
2
@u
@u
2
g
3
¸
@2 Sg
4 0
=
@u2
0
Duu
g
2
g
3
¸ ¡ 3¸
¸ g2
¸ g2 ¡ ¸ g3
3
¡ 1 1
0 0
= 4 0 ¡ 1 1 0 5
0
0 ¡ 1 1
g
2
g
3
¡ 2¸ + 3¸
¡ 2¸ g2
¡ 2¸ g2 + 3¸ g3
g
2
g
3
¸ ¡ ¸
¸ g2
¸ g2 ¡ 3¸ g3
3
0
0 5
¸ g3
• We derive the subdivision process is C2:
2
3
0 1 ¡ 2 1 0
@2 S1
1 @2 Sg
= lim g
= 4 0 1 ¡ 2 1 0 5
2
2
g! 1 ¸ 2 @
@u
u
0 1 ¡ 2 1 0
@2 P 1
@2 S1 0
=
P
@u2
@u2
@2 V0;0;0
= V¡
2
u
2;¡ 1;0
¡ 2V¡
1;0;1
+ V0;1;2
3rd Derivatives
We can iterate again to check if the subdivision
process is C3:
·
@3 Sg
@2 Sg
= D uuu
@u3
@u2
@3 Sg
=
@u3
·
¡ ¸
0
Duuu =
g
3
3¸ g3
¡ ¸ g3
¡ 3¸ g3
3¸ g3
¡ 1 1 0
0 ¡ 1 1
g
3
¸
¡ 3¸ g3
0
¸ g3
¸
¸
The rows are not the same, so the process is not C3
Catmull-Clark Subdivision
Loop Subdivision
p
3 Subdivision