bounding the distance between a loop subdivision surface

19
Bounding the Distance between a Loop Subdivision Surface and Its Limit Mesh Zhangjin Huang Guoping Wang HCI & Multimedia Lab Peking University, P.R. China

Upload: others

Post on 25-Jan-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Bounding the Distance between a Loop Subdivision Surface and

Its Limit Mesh

Zhangjin HuangGuoping Wang

HCI & Multimedia LabPeking University, P.R. China

Loop subdivision surfaceLoop subdivision surface (Loop 1987)

a generalization of quartic three-directional box splinesurface to triangular meshes of arbitrary topology

continuous except at extraordinary points

the limit of a sequence of recursively refined (triangular) control meshes

2C

initial mesh step 1 limit surface

Linear approximationsLinear approximations of a Loop

surface are used in surface rendering, numerical control tool-path generation, etc

Two linear approximations:(refined) control meshlimit mesh: obtained by pushing the control points of a control mesh to their limit positions

It inscribes the limit surface

control mesh

limit mesh

Problems of limit mesh approx.Approximation error

How to estimate the error (distance) between a Loop surface and its limit mesh?

Subdivision depth estimationHow many steps of subdivision would be necessary to satisfy a user-specified error tolerance?

Distance (error)Each surface patch corresponds to a limit triangle

in its limit meshis formed by connecting the three corners of

Distance (error) between a patch and the limit mesh is defined as

: Stam’s parameterization of: linear parameterization of : the unit triangle

( , )v wS

Ω

{ }( , ) [0,1], [0,1 ]v w v vΩ = ∈ ω∈ −

( , )v wFSF

( , )max ( , ) ( , )v w

v w v w∈Ω

−S F

SF

F S

S

S

_F

Control mesh of a Loop patchAssume: the initial control

mesh has been subdivided at least once

Each triangle face contains at most one extraordinary point

The control mesh of a Loop patch of valence consists of n+6 control points

P1: the only extraordinary point of valence n

S

Control mesh of a Loop patch of valence n

{ }: 1,2, , 6i i n = +P …

n

Second order normEach interior edge in the control

mesh can be associated with a mixed second difference (MSD):

The second order norm of the control mesh of Loop patch is defined as the maximum norm of n+9 MSDs:

M

i j k m+ − − P P P P

S

i jPP

Our goalTo derive a bound on the distance between

a Loop patch and its limit triangle as

: the second order norm of the control mesh of

: a constant only depends on valence n

( , )v wS ( , )v wF

( , )max ( , ) ( , ) ( )v w

v w v w n Mβ∈Ω

− ≤S F

MS

( )nβ

Regular patchis a quartic box spline

patch defined by 12 control points:

: quartic box splinebasis functions

is also a quartic tri-angular Bézier patch:

: quartic Bernstein polynomials

: Bézier points of

( , )v wS

12

1( , ) ( , ), ( , )i i

iv w N v w v w

=

= ∈Ω∑S p

( , )v wS

15

1( , ) ( , ), ( , )i i

iv w B v w v w

=

= ∈Ω∑S b

Bézier points of a quartic triangular Bézierpatch and Bernstein polynomials

Control points of a quartic box splinepatch

( , )iN v w

( , )iB v w

ib S

Regular patchLimit triangle is , and its linear

parameterization is

: barycentric system of coordinates for the unit triangle,

By the linear precision property of the Bernstein polynomials, can be expressed into the quartic Bézier form:

Here,

1 11 15{ , , }= F b b b

1u v w= − −

1 11 15( , ) , ( , )v w u v w v w= + + ∈ΩF b b b( , , )u v w

15

1( , ) ( , ), ( , )i i

iv w B v w v w

=

= ∈Ω∑F b

( , )v wF

( )( 1)2 1 4 4( , )j k j k j k

k+ + + + + = b F

Regular patchFor ,

By solving some constrained minimization problems, can be bounded as

Here, is the second order norm of , and

( , )u v ∈Ω15

1

( , ) ( , ) ( ) ( , )ii ii

v w v w B v w=

− = −∑S F b b

15

1( , )ii i

iB v w

=

≤ −∑ b b

ii −b b

,1 15ii iM iδ− ≤ ≤ ≤b b

1 11 15 0δ δ δ= = = 12 3 7 10 12 14 4δ δ δ δ δ δ= = = = = =

M S

14 6 13 3δ δ δ= = = 5

5 8 9 12δ δ δ= = =

Regular patchThus,

Here, is called thedistance bound function of with respect to .

Since , we have

15

1( , ) ( , ) ( , ) ( , )i i

iv w v w B v w M D v w Mδ

=

− ≤ =∑S F

152 2

1( , ) ( , )i i

iD v w B v w v w v vw wδ

=

= = + − − −∑( , )v wS

( , )v wF

1 1 13 3 3( , )

max ( , ) ( , )v w

D v w D∈Ω

= =

13( , ) ( , )v w v w M− ≤S F

Extraordinary patchcan be partitioned into an infinite sequence of regular triangular sub-patchs:

corresponding to tilesis partitioned into sub-triangles accordingly.

For each subpatch ,

: distance bound function

{ : 1, 1,2,3}km k m ≥ =S

S

kmS

( , )kmD v w

( , )( ) max ( , )k k

m mv wn D v wβ

∈Ω=

( , ) ( , ) ( , ) ( )kk k kmm m mv w v w D v w M n Mβ− ≤ ≤S F

, 1, 1,2,3km k m ≥ =FF

, 1, 1,2,3km k mΩ ≥ =

Extraordinary patchLet , we have

For , the following fact is found:Maximum of appears in the domain

To compute the values of , only four subpatchs are needed to be analyzed.

1, 1,2,3( ) max ( )k

mk mn nβ β

≥ ==

( , )max ( , ) ( , ) ( )v w

v w v w n Mβ∈Ω

− ≤S F

3 50n ≤ ≤( ), 1, 1,2,3k

m n k mβ ≥ =14{( , ) }v w v wΩ = Ω ∩ + ≥

( )nβ1 1 2 21 2 1 2, , ,S S S S

Subdivision depth estimationTheorem Given an error tolerance , after

steps of subdivision on the control mesh of a patch , the distance between and its level-k control mesh is smaller than . Here

and is the j-step convergence rate of second order norm.

For regular Loop patches,

0ε >

ε

min0 1

k l jjjλ

λ= +

≤ ≤ −

SS

13

1/ ( )

( )max{ ( ), }log , 0 1, 1j

j r n

r n n Ml j

λ

βλ λ

ε ⎡ ⎤

= ≤ ≤ − ≥⎢ ⎥⎢ ⎥( )jr n

4log3Mkε

⎡ ⎤= ⎢ ⎥⎢ ⎥

ComparisonThe distance between a Loop patch and its control

mesh can be bounded as:

A limit mesh approximates a Loop surface better than the corresponding control mesh in general.

( , )max ( , ) ( , ) ( ) , 1u v

v w v w C n Mλ λ∈Ω

− ≤ ≥S F

Comparison results of C3(n) and β(n), 3≤n≤10

S

ComparisonSet , error tolerance . Comparison

results of subdivision depths for control mesh and limit mesh approximations are as follows:

Limit mesh approximation has a 20% improvement over control mesh approximation in most of the cases.

1M = 0.0001ε =

Conclusion and remarkWe propose an approach to estimate the bound on the distance between a Loop surface and its limit mesh.A subdivision depth estimation formula for limit mesh approximation is derived.

The upper bounds derived here are optimal for regular patches, but not optimal for extraordinary patches.

Thank you!