subdivision curves and surfacessheffa/dgp/ppts/subdivision.pdf · subdivision surfaces or how to...

36
University of University of British Columbia British Columbia Subdivision Surfaces or How to Generate a Smooth Mesh? ? University of University of British Columbia British Columbia Subdivision Curves and Surfaces Subdivision – given polyline(2D)/mesh(3D) recursively modify & add vertices to achieve smooth curve/surface Each iteration generates smoother + more refined mesh

Upload: others

Post on 19-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

1

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision Surfaces or How to Generate a Smooth Mesh?

?→

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision Curves and Surfaces

Subdivision – given polyline(2D)/mesh(3D) recursively modify & add vertices to achieve smooth curve/surface

Each iteration generates smoother + more refined mesh

Page 2: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

2

University ofUniversity ofBritish ColumbiaBritish Columbia

What is wrong with NURBS?

Very, very difficult to avoid seamsWoody’s hand from Pixar’s Toy Story

Subdivision – no seamsGeri’s hand from Geri’s Game

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

Page 3: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

3

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

1 : 33

: 1

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

Page 4: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

4

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

Page 5: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

5

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

Page 6: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

6

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

University ofUniversity ofBritish ColumbiaBritish Columbia

Corner Cutting

control polygon

limit curvecontrol point

Page 7: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

7

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 8: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

8

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

1 :

1

1 :

1

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

1 :

8

Page 9: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

9

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 10: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

10

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 11: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

11

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 12: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

12

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 13: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

13

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

Page 14: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

14

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

The 4-point scheme

control polygon

limit curvecontrol point

Page 15: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

15

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision curves

Non interpolatory subdivision schemes

Corner Cutting

Interpolatory subdivision schemes

The 4-point scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

Basic concepts of Subdivision

Subdivision curve – limit of recursive subdivision applied to given polygonEach iteration

Increase number of vertices (approximately) * 2Initial polygon - control polygon

Central questions: Convergence: Given a subdivision operator and a control polygon, does the subdivision process converge? Smoothness: Does subdivision converge to smooth curve?

Page 16: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

16

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision schemes for surfaces

Each iteration Subdivision refines control net (mesh)Increase number of vertices (approximately) * 4

Mesh vertices converge to limit surfaceEvery subdivision method has:

Method to generate net topology rules to calculate location of new vertices

University ofUniversity ofBritish ColumbiaBritish Columbia

Defined for triangular meshes (control nets)

Every face replaced by 4 new triangular facesTwo kinds of new vertices:

Green vertices are associated with old edgesYellow vertices are associated with old vertices

Triangular subdivision

Old vertices New vertices

Page 17: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

17

University ofUniversity ofBritish ColumbiaBritish Columbia

Loop’s scheme

New vertex is weighted average of old vertices

List of weights called subdivision mask or stencil

3 3

1

1

1

1

1

1

1

( )( )n

nnwn −

+−= 22cos2340

64π

Rule for new yellow vertices (n – vertex valence)

Rule for new green vertices

wn

University ofUniversity ofBritish ColumbiaBritish Columbia

The original control net

Page 18: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

18

University ofUniversity ofBritish ColumbiaBritish Columbia

After 1st iteration

University ofUniversity ofBritish ColumbiaBritish Columbia

After 2nd iteration

Page 19: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

19

University ofUniversity ofBritish ColumbiaBritish Columbia

After 3rd iteration

University ofUniversity ofBritish ColumbiaBritish Columbia

Loop Scheme

Page 20: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

20

University ofUniversity ofBritish ColumbiaBritish Columbia

Loop Limit Surface

Limit surfaces of Loop’s subdivision is C2 almost everywhere

University ofUniversity ofBritish ColumbiaBritish Columbia

Butterfly Scheme

Interpolatory scheme

New yellow vertices inherit location of old vertices

New green vertices calculated by following stencil:-1

-1

-1

-1

88

2

2

Page 21: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

21

University ofUniversity ofBritish ColumbiaBritish Columbia

The original control net

University ofUniversity ofBritish ColumbiaBritish Columbia

After 1st iteration

Page 22: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

22

University ofUniversity ofBritish ColumbiaBritish Columbia

After 2nd iteration

University ofUniversity ofBritish ColumbiaBritish Columbia

After 3rd iteration

Page 23: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

23

University ofUniversity ofBritish ColumbiaBritish Columbia

Butterfly Scheme

University ofUniversity ofBritish ColumbiaBritish Columbia

Butterfly limit surface

Limit surfaces of Butterfly subdivision are C1, but do not have second derivative

Page 24: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

24

University ofUniversity ofBritish ColumbiaBritish Columbia

Comparison

University ofUniversity ofBritish ColumbiaBritish Columbia

Boundaries & Features: Loop

Boundary vertices – depend ONLY on other boundary vertices Corner vertices left in place

Sometimes modified rules for corner neighbors

Treat features (creases) like boundaries

1 6 1

1 1

Page 25: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

25

University ofUniversity ofBritish ColumbiaBritish Columbia

Scheme Zoo

More schemes:

Catmul-Clark KobbeltDuo-Sabin…

Proving scheme works:ConvergenceDegree of continuityAffine invariance

University ofUniversity ofBritish ColumbiaBritish Columbia

Affine Invariance

TransformT

TransformT

subdivide

subdivide

Coefficients of masks sum to 1 –weighted average

Page 26: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

26

University ofUniversity ofBritish ColumbiaBritish Columbia

Affine Invariance

1

8

1

8

3

83

8

®

® ®

® ®

1¡ n® p =X

aipi

Coefficients of masks must sum to 1

Xai(pi + t) =

³Xai´t+ p

1

displacement

University ofUniversity ofBritish ColumbiaBritish Columbia

Analysis of Subdivision

Test:ConvergenceSmoothness

Goals:Help to choose the rules Ensure that all surfaces have desired properties

PlanDefine subdivision surfacesRelate properties to coefficients

Page 27: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

27

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision Matrix

Relate control on finer level to coarser level

Useful forAnalysis of properties

smoothnessaffine invariance

Formulas for normals

Explicit evaluation of surfaces at arbitrary points of the domain

University ofUniversity ofBritish ColumbiaBritish Columbia

Controls of K-Sided Patch

Simplest case - consider only 1-ring

c p0p6p4

p5

p3p2

c

p6

p0

p1p2

p3

p5

p4

p1

Page 28: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

28

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

Page 29: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

29

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

Page 30: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

30

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

Page 31: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

31

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

Page 32: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

32

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

University ofUniversity ofBritish ColumbiaBritish Columbia

0BBBBBBBBBBBBBBBBBBBBBBBBB@

7=16 3=16 3=16 3=16 0 0 0 0 0 0

3=8 3=8 1=8 1=8 0 0 0 0 0 0

3=8 1=8 3=8 1=8 0 0 0 0 0 0

3=8 1=8 1=8 3=8 0 0 0 0 0 0

1=16 5=8 1=16 1=16 1=16 0 0 1=16 0 1=16

1=16 1=16 5=8 1=16 0 1=16 0 1=16 1=16 0

1=16 1=16 1=16 5=8 0 0 1=16 0 1=16 1=16

1=8 3=8 3=8 0 0 0 0 1=8 0 0

1=8 0 3=8 3=8 0 0 0 0 1=8 0

1=8 3=8 0 3=8 0 0 0 0 0 1=8

1CCCCCCCCCCCCCCCCCCCCCCCCCA

Subdivision Matrix

Page 33: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

33

University ofUniversity ofBritish ColumbiaBritish Columbia

Diagonalize subdivision matrix

eigenvectors

eigenvalues

: vector of points in a neighborhood

xi, i = 0::N

¸i, i = 0::N

p

p =Xi

aixi

(N+1)-vector of 3D points3D vector

Eigen Decomposition

University ofUniversity ofBritish ColumbiaBritish Columbia

“Good” case: &

can make zero by moving control points (by affine invariance)

a0

Smp = a0x0 + ¸m1 a1x1 + ¸

m2 a2x2 + ¸

m3 a3x3 + : : :

x0 = [1;1; : : : 1]

Eigenvectors

limit position tangent vectors

10 =λ 1n,,1i,1i −=< Kλ

Page 34: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

34

University ofUniversity ofBritish ColumbiaBritish Columbia

Next higher order termsassume move control points so that

1

¸mSmp = (a1x1 + a2x2) +

µ¸3¸

¶mx3 + : : :

vanishes

a0 = 0¸ = ¸1 = ¸2 > j¸3j

subdominant eigenvectors

Subdominant Eigenvectors

University ofUniversity ofBritish ColumbiaBritish Columbia

Loop schemeOnly one ring is necessary – matrix of K+1 rows

Compute eigenvectors (left l & right x)

Get coefficients from projection

Example:Tangents

),( Pla ii =

Page 35: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

35

University ofUniversity ofBritish ColumbiaBritish Columbia

c p0p6p4

p5

p3p2

c

p6

p0

p1p2

p3

p5

p4

p1

Eigenvalue 0left and right vector are different

lcenter0 = d

d=3

3+ 8k®

li0 =8

3d®; i = 0 : : :K ¡ 1

Example: Limit Position

a0 = dc+8

3d®Xi

pi

University ofUniversity ofBritish ColumbiaBritish Columbia

Subdivision Drawbacks

Not always intuitiveCan have artifactsHard to control

Page 36: Subdivision Curves and Surfacessheffa/dgp/ppts/subdivision.pdf · Subdivision Surfaces or How to Generate a Smooth Mesh?? → University of British Columbia Subdivision Curves and

36

University ofUniversity ofBritish ColumbiaBritish Columbia

Properties

Works best on regular connectivity (valence 6)Easy to implement

Efficiency is another matterUse Eigen-analysis for exact computation

Local support – operations depend on local data Order does not matterData structure support

Allow LOD View mesh at any level as control mesh

Apply geometric modifications

ContinuousScheme dependent

University ofUniversity ofBritish ColumbiaBritish Columbia

Geri’s Game