A Note on Subdivision Kwan Pyo Ko Dongseo University

Slides:



Advertisements
Similar presentations
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 14: Review / Subdivision Ravi Ramamoorthi Slides courtesy.
Advertisements

Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 10 Ravi Ramamoorthi
© University of Wisconsin, CS559 Spring 2004
Data mining and statistical learning - lecture 6
Jehee Lee Seoul National University
Finite element method – basis functions 1 Finite Elements: Basis functions 1-D elements  coordinate transformation  1-D elements  linear basis functions.
Classic Subdivision Schemes. Schemes Catmull-Clark (1978) Doo-Sabin (1978) Loop (1987) Butterfly (1990) Kobbelt (1996) Mid-edge (1996 / 1997)
On Triangle/Quad Subdivision Scott Schaefer and Joe Warren TOG 22(1) 28 – 36, 2005 Reporter: Chen zhonggui
Analysis techniques for subdivision schemes Joe Warren Rice University.
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
CS Peter Schröder Subdivision I: The Basic Ideas.
Surfaces Chiew-Lan Tai. Surfaces 2 Reading Required Hills Section Hearn & Baker, sections 8.11, 8.13 Recommended Sections 2.1.4, , 3D Computer.
Offset of curves. Alina Shaikhet (CS, Technion)
Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
Surfaces Chiew-Lan Tai. Surfaces 2 Reading Required Hills Section Hearn & Baker, sections 8.11, 8.13 Recommended Sections 2.1.4, , 3D Computer.
Normal based subdivision scheme for curve and surface design 杨勋年
Content Subdivision First some basics (control point polygon, mesh)
1 Subdivision Surfaces CAGD Ofir Weber. 2 Spline Surfaces Why use them?  Smooth  Good for modeling - easy to control  Compact (complex objects are.
Subdivision Overview Subdivision is a two part process Control Mesh
Subdivision Primer CS426, 2000 Robert Osada [DeRose 2000]
11/08/00 Dinesh Manocha, COMP258 Subdivision Curves & Surfaces Work of G. de Rham on Corner Cutting in 40’s and 50’s Work of Catmull/Clark and Doo/Sabin.
Scott Schaefer Joe Warren A Factored, Interpolatory Subdivision for Surfaces of Revolution Rice University.
09/16/02 Dinesh Manocha, COMP258 Surfaces Locally a 2D manifold: i.e. approximating a plane in the ngbd. of each point. A 2-parameter family of points.
CS Subdivision I: The Univariate Setting Peter Schröder.
Subdivision Analysis via JSR We already know the z-transform formulation of schemes: To check if the scheme generates a continuous limit curve ( the scheme.
Introduction to Subdivision Surfaces. Subdivision Curves and Surfaces 4 Subdivision curves –The basic concepts of subdivision. 4 Subdivision surfaces.
Splines III – Bézier Curves
Curves and Surfaces (cont’) Amy Zhang. Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:
Curve Modeling Bézier Curves
Smooth Spline Surfaces over Irregular Topology Hui-xia Xu Wednesday, Apr. 4, 2007.
Subdivision surfaces Construction and analysis Martin Reimers CMA/IFI, University of Oslo September 24th 2004.
Surfaces Lecture 6 (Modelling). Reminder: Homogenous Co-ordinates l2D Translations cannot be encoded using matrix multiplication because points at the.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
Curve Modeling B-Spline Curves
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
4/15/04© University of Wisconsin, CS559 Spring 2004 Last Time More modeling: –Hierarchical modeling –Instancing and Parametric Instancing –Constructive.
Creating & Processing 3D Geometry Marie-Paule Cani
(Spline, Bezier, B-Spline)
V. Space Curves Types of curves Explicit Implicit Parametric.
Introduction to Subdivision surfaces Martin Reimers CMA, University of Oslo.
Course 13 Curves and Surfaces. Course 13 Curves and Surface Surface Representation Representation Interpolation Approximation Surface Segmentation.
Geometric Objects and Transformation
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Parametric Curves.
Parametric Surfaces Define points on the surface in terms of two parameters Simplest case: bilinear interpolation s t s x(s,t)x(s,t) P 0,0 P 1,0 P 1,1.
Subdivision Curve (and its relations to wavelets) Jyun-Ming Chen Spring 2001.
Lee Byung-Gook Dongseo Univ.
04/18/02(c) 2002 University of Wisconsin Last Time Hermite Curves Bezier Curves.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
11/26/02(C) University of Wisconsin Last Time BSplines.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
Construction of Navau and Garcia. Basic steps Construction has two parameters: smoothness k and n > k, defining how closely the surface follows the control.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Subdivision surfaces.
Rendering Bezier Curves (1) Evaluate the curve at a fixed set of parameter values and join the points with straight lines Advantage: Very simple Disadvantages:
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Curves University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
Subdivision Schemes. Center for Graphics and Geometric Computing, Technion What is Subdivision?  Subdivision is a process in which a poly-line/mesh is.
Introduction to Parametric Curve and Surface Modeling.
© University of Wisconsin, CS559 Spring 2004
Subdivision curves.
Advanced Computer Graphics
© University of Wisconsin, CS559 Fall 2004
Subdivision curves.
© University of Wisconsin, CS559 Spring 2004
The Variety of Subdivision Schemes
Generalization of (2n+4)-point approximating subdivision scheme
Mask of interpolatory symmetric subdivision schemes
Subdivision: From Stationary to Non-stationary scheme.
Introduction to Parametric Curve and Surface Modeling
Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr.
Presentation transcript:

A Note on Subdivision Kwan Pyo Ko Dongseo University

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 p j + 1 = S p j ( S p ) a = X b ® a ¡ 2 b p b

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)- Interpolatory subdivision on open quadrilateral nets with arbitrary topology (2000)- subdivision Velho(2000)- Quasi 4-8 subdivision Velho-Zorin(2000)- 4-8 subdivision Dogson,Ivrissimtzis,Sabin(2003)- Characteristic of dual triangular subdivision (2004)- 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. p 3 p 3 p 5

Schemes Catmull-Clark (1978) Doo-Sabin (1978) Loop (1987) Butterfly (1990) Kobbelt (1996) Mid-edge (1996 / 1997) Subdivision (2000) p 3

Why Subdivision? Arbitrary topology Multi-resolution Simple/Efficient code Construct Wavelet Analysis

Chaikin’s Algorithm -converges to the quadratic B-Spline. p k i + 1 = 1 4 p k i p k i + 1 p k i = 3 4 p k i p k i + 1

Cubic Spline Algorithm -converges to the cubic B-Spline. p k i + 1 = 1 8 p k i p k i p k i + 2 p k i = 1 2 p k i p k i + 1

4-point Interpolatory Scheme (N. Dyn, D.Levin and J.Gregory) -continuous for -C 1 for p k i = p k i j w j < < w < 1 8 p k i + 1 = µ w ¶ ( p k i + p k i + 1 ) ¡ w ( p k i ¡ 1 + p k i + 2 )

Deslauriers-Dubuc Scheme Finding a minimally supported mask such that (2N+1)th degree polynomial filling property (de Villiers, Goosen and Herbst) DD mask has the explicit formulation X k a j ¡ 2 k p ( k ) = p ( j 2 ) ; j 2 Z ; p 2 ¼ 2 N + 1 a j = 0 ; j j j ¸ 2 N + 2 a 2 j + 1 = N N + 1 µ 2 N + 1 N ¶ ( ¡ 1 ) j 2 j + 1 µ 2 N + 1 N + j + 1 ¶ ; j = ¡ N ¡ 1 ;:::; N a 2 j = ± j ; 0 ; j = ¡ N ;:::; N

Polynomial Reproducing DD scheme obtained the mask by using polynomial reproducing property 4-point DD scheme: f k i = f k i ; f k i + 1 = 9 16 ( f k i + f k i + 1 ) ¡ 1 16 ( f k i ¡ 1 + f k i + 2 ) :

Ternary Interpolatory Subdivision Scheme

p j j = p i j p j j + 1 = ap i j ¡ 1 + b p i j + cp i j d p i j + 2 p j j + 2 = d p i j ¡ 1 + cp i j + b p i j ap i j + 2 a = ¡ 1 18 ¡ 1 6 w ; b = w ; c = 7 18 ¡ 1 2 w ; d = ¡ w : C 2 f or 1 15 < w < 1 9 where the weights are given by

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. [ w ; ¡ w ][ 2 w ; ¡ 3 w ¡ 1 16 ; w ][ 5 w ; ¡ 9 w ¡ ; 5 w ¡ ; ¡ w ][ 14 w ; ¡ 28 w ¡ ; 20 w ¡ ; ¡ 7 w ¡ ; w ]

General form for mask of 2n-point ISSS The coefficients of w can be expressed in a matrix form

We found out that matrix A satisfied the particular rule. A = A ¢¢¢ 0 A 2 1 A 2 2 ¢¢¢ A n 1 A n 2 ¢¢¢ A n n : A n i = 8 > > < > > : A n ¡ 1 i ¡ A n ¡ 1 i + 1 i = 1 ;n = 2 ; 3 ::: ( ¡ 1 ) n ¡ 1 i = n 2 A n ¡ 1 i ¡ A n ¡ 1 i ¡ 1 ¡ A n ¡ 1 i + 1 i = 2 ; 3 :::; n;n = 3 ; 4 ;::: 0 i > n :

Relation between 2n-point ISSS and DD scheme We have the mask of 2n-point ISSS: a ISSS ; 2 n 2 i ¡ 1 = a ISSS ; 2 n ¡ 2 i + 1 a ISSS ; 2 n 2 i ¡ 1 = a DD ; 2 n ¡ 2 2 i ¡ 1 + A n i w ; i = 1 ; 2 ; 3 :::; n ; n 2 N + ; a DD ; 2 1 = 1 2 ; a DD ; 2 3 = ¢¢¢ = a DD ; 2 n ¡ 2 2 n ¡ 1 = 0

Example (for n=3) we get 6-point ISSS: a ISSS ; 6 1 = a DD ; A 3 1 w = w ; a ISSS ; 6 3 = a DD ; A 3 2 w = ¡ 1 16 ¡ 3 w ; a ISSS ; 6 5 = a DD ; A 3 3 w = w : [ w ; ¡ 1 16 ¡ 3 w ; w ; w ; ¡ 1 16 ¡ 3 w ; w ] :

Matrix formula for the mask of 2n-point DD scheme The formula can be written in the form: w i = i 2 4 i ¡ 3 µ 2 i ¡ 1 i ¡ 1 ¶ 1 2 i ¡ 1

Example (for n=3) we obtain 6-point DD scheme: A = 2 4 A A 2 1 A A 3 1 A 3 2 A = ¡ 10 2 ¡ ; w n = [ w 1 ; w 2 ; w 3 ] = [ 1 2 ; 1 16 ; ][ ; ¡ ; ; ; ¡ ; ] :

Mask of D-D scheme

Generalization of Mask (G.J.Yoon) Consider the problem of finding mask reproducing polynomial of degree (2N+1) We let a = f a j g 2 N + 3 j = ¡ 2 N ¡ 3 v = a 2 N + 2 ; w = a 2 N + 3 X k a j ¡ 2 k p ( k ) = p ( j 2 ) ; j 2 Z ; p 2 ¼ 2 N + 1 :

For we get the mask j = - N - 1, ¢¢¢ ; N ; a 2 j = ± j ; 0 + ( ¡ 1 ) j + N + 1 µ 2 N + 2 N + j + 1 ¶ v : a 2 j + 1 = N N + 1 µ 2 N + 1 N ¶ ( ¡ 1 ) j 2 j + 1 µ 2 N + 1 N + j + 1 ¶ + ( ¡ 1 ) j + N + 1 w µ 2 N + 1 N + j + 1 ¶ ( 2 N + 2 )( 2 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 In case v=0, we have In case v=w=0, it becomes 4-point DD scheme [ w ; v ; ¡ 1 16 ¡ 3 w ; ¡ 4 v ; w ; v ; w ; ¡ 4 v ; ¡ 1 16 ¡ 3 w ; v ; w ] : [ w ; 0 ; ¡ 1 16 ¡ 3 w ; 0 ; w ; 1 ; w ; 0 ; ¡ 1 16 ¡ 3 w ; 0 ; w ] : [ ¡ 1 16 ; 0 ; 9 16 ; 1 ; 9 16 ; 0 ; ¡ 1 16 ] :

Approximation Order Definition A subdivision scheme S has approximation order n if for initial data with smooth F enough Theorem The approximation order of a convergent SS S, which is exact for, is n+1. Q) Determine the approximation order of the 4-point DD scheme. f 0 i = F ( i h )j( F ¡ S 1 f 0 )( x )j · C h n ¼ n

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) Vertex split (dual type) Triangular meshesQuad.meshes approximatingLoopCatmull-Clark interpolatingButterflyKobbelt Quad. meshes approximatingDoo-Sabin, Midedge ( C 2 )( C 2 )( C 1 )( C 1 )( C 1 )( C 1 )

Binary Subdivision of B-Spline Univariate B-Spline : where : normalized B-Spline. ( ¤ ) S r ( u ) = X i 2 Z d r i N r ( u ¡ i ) ; N r

Properties Partition of unity : Positivity : Local support : Continuity : Recursion : P i N r ( u ¡ i ) = 1 N r ( u ) ¸ 0 N r ( u ¡ i ) = 0 i f u = 2 [ i ; i + r + 1 ] N r ( u ) 2 C ( r ¡ 1 ) N r ( u ¡ i ) = u ¡ i r N r ¡ 1 ( u ¡ i ) + i + r + 1 ¡ u r N r ¡ 1 ( u ¡ i ¡ 1 )

Idea behind Subdivision Rewrite the curve (*) as a curve over a refined knot sequence (*) becomes DetermineA single B-Spline can be decomposed into similar B- Spline of half the support. Z = 2 : S r ( u ) = X j 2 Z = 2 ^ d r j N r ( 2 ( u ¡ j )) ^ d r j

This results in where For example Chaikin’s algorithm N r ( u ) = X j 2 Z = 2 c r j N r ( 2 ( u ¡ j )) ; ^ d r j = X i 2 Z c r j ¡ i d r i ; j 2 Z = 2 r = 2 ^ d 2 0 = X i 2 Z c 2 ¡ i d 2 i = ¢¢¢ + ( 3 = 4 ) d 2 ¡ 1 + ( 1 = 4 ) d ¢¢¢ ^ d 2 1 = 2 = ¢¢¢ + ( 1 = 4 ) d 2 ¡ 1 + ( 3 = 4 ) d ¢¢¢ c r j = 2 ¡ r ¡ r j ¢

Tensor Product B-Spline Surface S r ; s ( u ) = X i 2 Z 2 d r ; s i N r ; s ( u ¡ i ) 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 )

Example 1 The mask set : ^ d r ; s j = X i 2 Z 2 c r ; s j ¡ i d r ; s i ; j 2 Z 2 = 2 r = s = 2 ^ d 2 ; 2 0 ; 0 = ¢¢¢ + ( 9 16 ) d 2 ; 2 ¡ 1 ; ¡ 1 + ( 3 16 ) + d 2 ; 2 0 ; ¡ 1 + ¢¢¢ ¢¢¢ + ( 3 16 ) d 2 ; 2 ¡ 1 ; 0 + ( 1 16 ) + d 2 ; 2 0 ; 0 + ¢¢¢ c r ; s j = c r i c s j = 2 ¡ ( r + s ) µ r i ¶µ s j ¶

Example 2 The mask for bi-cubic tensor product B-Spline r = s = 3

Triangular Spline A triangular spline surface : where : a normalized triangular spline of degree (r+s+t-2) ( ¤ ) S r ; s ; t ( u ) = X i d r ; s ; t i N r ; s ; t ( u ¡ i ) ; u 2 R 2 ; i 2 Z 2 N r ; s ; t ( u )

Subdivision of Triangular Spline The surface (*) can be rewritten over the refine grid. A single triangular spline is decomposed into splines of identical degree over the refined grid. S r ; s ; t ( u ) = X j ^ d r ; s ; t j N r ; s ; t 2 ( u ¡ j ) N r ; s ; t ( u ) = X j 2 Z = 2 c r ; s ; t j N r ; s ; t ( 2 ( u ¡ j )) ;

Where The subdivision masks for the triangular spline ^ d r ; s ; t j = X i 2 Z c r ; s ; t j ¡ i d r ; s ; t i N 2 ; 2 ; 2 ( u ) c r ; s ; t j = 2 ¡ ( r + s + t ) t X k = 0 µ r 2 i ¡ k ¶µ s 2 j ¡ k ¶µ t k ¶

Doo-Sabin Scheme Approximating Scheme Tensor Product Quadratic B-Spline Continuity –C 1 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.

P0P0 P1P1 P3P3 P2P2 P’’ 2 P’ 3 P’ 0 P’ 2 P’ 1 P’ b P’’ 1 P’’ 3 P’’ 0 Doo-Sabin Scheme S DS 4 = ( P 0 \ ; P 1 \ ; P 2 \ ; P 3 \ ) T = S DS 4 ( P 0 ; P 1 ; P 2 ; P 3 ) T

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 mid-edge points next to the corner. arbitrary topology

For an n-sided face Doo/Sabin used subdivision matrix 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, the surfaces generated by the Doo/Sabin algorithm are locally S DS n = ( ® i j ) n £ n ; C 1 C 1 ® i j = 5 + n 4 n ; i = j ® i j = cos ³ 2 ¼ ( i ¡ j ) n ´ 4 n ; i 6 = j

Maple Code: osabin.pdfhttp:// osabin.pdf

Catmull-Clark Scheme Approximating Scheme Tensor Product Bicubic B-spline Continuity - C 2 regular regions –C 1 extraordinary vertices Primal Quadrilateral

q 11 : New face points q 12 : New edge points q 22 : New vertex points P 41 P 42 Catmull/Clark Algorithm

New face points : New edge points : New vertex points : q 12 = C + D 2 + P 12 + P ; C = q 11 ; D = q 13 q 22 = Q 4 + R 2 + P 22 4 q 11 = P 11 + P 12 + P 21 + P 22 4 Q = q 11 + q 13 + q 31 + q 33 4 R = 1 4 ·µ p 22 + p 12 2 ¶ + µ p 22 + p 21 2 ¶ + µ p 22 + p 32 2 ¶ + µ p 22 + p 23 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. 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. 1 4 Q R S ;

Note : tangent plane continuity was not maintained at extraordinary points. N : order of the vertex tangent plane continuity at extraordinary points. ^ S = 1 N Q + 2 N R + N ¡ 3 N S

Maple Code: mullclark.pdfhttp:// mullclark.pdf

Butterfly Scheme Interpolating Scheme General Scheme Continuity –C 1 regular regions Primal Triangular Quadrisection

Butterfly scheme q k e = 1 2 ( p k e ; 1 + p k e ; 2 ) + 2 w ( p k e ; 3 + p k e ; 4 ) ¡ w 8 X j = 5 p k e ; j p k + 1 i = p k i [ q k e

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 4-point scheme along the other two grid directions. For a new vertex in the (1,0) direction, the rule is f k i + 1 ; j = 1 2 ( f k i ; j + f k i + 1 ; j ) + 2 w ( f k i + 1 ; j f k i ; j ¡ 1 ) ¡ w ( f k i + 2 ; j f k i ; j f k i ¡ 1 ; j ¡ 1 + f k i + 1 ; j ¡ 1 )

For a new vertex in the direction (0,1) For (1,1) Under the assumption f k + 1 i ; 2 j + 1 = 1 2 ( f k i ; j + f k i ; j + 1 ) + 2 w ( f k i + 1 ; j f k i ¡ 1 ; j ) ¡ w ( f k i + 1 ; j f k i + 1 ; j + f k i ¡ 1 ; j ¡ 1 + f k i ¡ 1 ; j + 1 ) f k i + 1 ; 2 j + 1 = 1 2 ( f k i ; j + f k i + 1 ; j + 1 ) + 2 w ( f k i + 1 ; j + f k i ; j + 1 ) ¡ w ( f k i + 2 ; j f k i + 1 ; j f k i ¡ 1 ; j + f k i ; j ¡ 1 ) f k i ; j = f k 0 ; j

We get from the first insertion rule For a new vertex (0,1) direction we get The third insertion rule gives the same rule as above. f k i + 1 ; j = f k 0 ; j f k + 1 i ; 2 j + 1 = ( w )( f k 0 ; j + f k 0 ; j + 1 ) ¡ w ( f k 0 ; j f k 0 ; j ¡ 1 )

Maple Code: terfly.pdfhttp:// terfly.pdf

Loop Scheme Approximating Scheme Three Directional Box-Spline Continuity –C 2 regular regions –C 1 extraordinary vertices Primal Triangular Quadrisection

Loop Scheme A generalized triangular subdivision surface. The subdivision masks for mask A generates new control points for each vertex mask B generates new control points for edge of the original regular triangular mesh. N 2 ; 2 ; 2 ( u )

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. 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. ^ V = 5 8 V Q ;

Note : tangent plane continuity is lost at the extraordinary points.

Loop scheme where -curvature continuity at regular point. -tangent plane continuity at extaordinary point. ^ V = ® N V + ( 1 ¡ ® N ) Q ; ® N = µ cos 2 ¼ N ¶

Maple Code p.pdfhttp:// p.pdf

Mid-Edge Scheme P0P0 P1P1 P3P3 P2P2 P’ 3 P’ 0 P’ 2 P’ 1 P’’ 0 P’’ 1 P’’ 3 P’’ 2 S ME 4 = ( P 0 \ ; P 1 \ ; P 2 \ ; P 3 \ ) T = S ME 4 ( P 0 ; P 1 ; P 2 ; P 3 ) T For an n-sided face, subdivision matrix : S ME n = ( ¯ i j ) n £ n ; ¯ i j = 1 + cos 2 ¼ ( i ¡ 1 ) n n

Circulant matrix eigenvalues of can be calculated by evaluating the polynomial. S G n = a 0 a 1 ¢¢¢ a n ¡ 1 a n ¡ 1 a 0 ¢¢¢ a n ¡ a 1 a 2 ¢¢¢ a S G n z = w j ; w = e i 2 ¼ n ; j = 0 ; 1 ; ¢¢¢ ; n ¡ 1 P n ( z ) = a 0 + a 1 z + ¢¢¢ + a n ¡ 1 z 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. 1.interpolatory. 2.local : four points scheme. define the first and second differences. df i = f i + 1 ¡ f i d i = d 2 f i = f i + 1 ¡ 2 f i + f i ¡ 1 f k i = f k i f k i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F 1 ¡ f k i ¡ 1 ; f k i ; f k i + 1 ; f k i + 2 ¢

3. invariant under addition of affine functions. ( ★ ) f k i = f k i f k i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F ( d k i ; d k i + 1 ) : subdivision function F 4. continuous 5. homogeneous, i.e., 6. symmetric F ( ¸ x ; ¸ y ) = ¸ F ( x ; y ) f k i = f k i f k i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F 2 µ 1 2 ( f k i + f k i + 1 ) ; df k i ; d k i ; d k i + 1 ¶

Theorem 1 (Convexity) A subdivision scheme of type (*) satisfying conditions 1 to 6 is convex preserving for all convex data F satisfies Note : if F=0linear SS.only (Question) under what conditions, SS(*) with conditions 1 to 6 and convexity condition generate continuously differentiable limit functions. Answer 0 · F ( x ; y ) · 1 4 m i n f x ; y g ; 8 x ; y ¸ 0 C 0

Theorem 2 (Smoothness) Under the same conditions hold as in Theorem 1. The scheme given by continuously differentiable function which is convex and interpolate the data Theorem 3 (Approximation order) The convexity preserving subdivision scheme has approximation order 4. f k i = f k i f k i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ d k i + 1 d k i + 1

Analysis of convergence and smoothness of binary SS by the formalism of Laurent polynomials A binary univariate SS: f k + 1 i = X j 2 Z a i ¡ 2 j f k j The general form of an interpolatory SS: f k i = f k i f k i + 1 = X j 2 Z a j f k i ¡ j

For each scheme, we define the symbol Theorem 1 Let be a convergent SS, then Theorem 2 Let denote a SS with symbol satisfying (*). Then there exists a SS with the property where and S a ( z ) = X i 2 Z a i z i S a ( ¡ 1 ) = 0 ; a ( 1 ) = 2 a ( z ) df k = S 1 df k ¡ 1 f k = S k f 0 S ( ¤ ) X j 2 Z a 2 j = X j 2 Z a 2 j + 1 = 1 S 1 df k = f( df k ) i = 2 k ( f k i + 1 ¡ f k i )g

Theorem 3 is a uniformly convergent SS, if only if converges uniformly to the zero function Theorem 4Let. If is convergent, then for any initial data. S 1 2 S 1 l i m k ! 1 ( 1 2 S 1 ) k f 0 = 0 a ( z ) = ( 1 + z ) m 2 m b ( z ) S b S 1 a f 0 2 C m ( R ) 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 k + 1 i = X j 2 Z a i ¡ 2 j f k j The general form of an interpolatory SS: f k i = f k i f k i + 1 = X j 2 Z a j f k i ¡ j

4-point interpolatory SS The 4 –point interpolatory SS: The Laurent-polynomial of this scheme is By symmetry and necessary condition, we get mask a ( z ) = a ¡ 3 z ¡ 3 + a ¡ 1 z ¡ a 1 z + a 3 z 3 a 1 + a 3 = 1 2 [ ¡ w ; w ; w ; ¡ w ] f k i = f k i f k i + 1 = a 3 f k i ¡ 1 + a 1 f k i + a ¡ 1 f k i a ¡ 3 f k i + 2

6-point interpolatory SS The 6 –point interpolatory SS: The Laurent-polynomial of this scheme is By symmetry and necessary condition, we get mask a ( z ) = a 5 z ¡ 5 + a ¡ 3 z ¡ 3 + a ¡ 1 z ¡ a 1 z + a 3 z 3 + a ¡ 5 f k i + 3 a 1 + a 3 + a 5 = a a = 0 [ w ; ¡ 1 16 ¡ 3 w ; w ; w ; ¡ 1 16 ¡ 3 w ; w ] f k i = f k i f k i + 1 = a 5 f k i ¡ 2 + a 3 f k i ¡ 1 + a 1 f k i + a ¡ 1 f k i a ¡ 3 f k i a ¡ 5 f k i + 3

Ternary interpolatory SS A ternary SS The general form of an interpolatory SS: f k + 1 i = X j 2 Z a i ¡ 3 j f k j f k i = f k i f k i + 1 = X j 2 Z a j f k i ¡ k f k i + 2 = X j 2 Z a j f k i ¡ k

For each scheme, we define the symbol Theorem 5 Let be a convergent SS, then (**) Let us consider a n-ary convergent scheme. The associated polynomial satisfies the properties. S a ( z ) = X i 2 Z a i z i S ( ¤ ) X j 2 Z a 3 j = X j 2 Z a 3 j + 1 = X j 2 z a 3 j + 2 = 1 a ( e 2 i ¼ = 3 ) = a ( e 4 i ¼ = 3 ) = 0 ; a ( 1 ) = 3 a ( 1 ) = n ; a ( w p n ) = 0 ; w p n = e 2 i p¼ n ; p 2 f 1 ; 2 ;:::; n ¡ 1 g

Theorem 6 Let denote a SS with symbol satisfying (*). Then there exists a SS with the property where and Theorem 7 is a uniformly convergent SS, if only if converges uniformly to the zero function a ( z ) df k = S 1 df k ¡ 1 f k = S k f 0 SS 1 df k = f( df k ) i = 3 k ( f k i + 1 ¡ f k i )g S 1 3 S 1 l i m k ! 1 ( 1 3 S 1 ) k f 0 = 0

Ternary 4-point interpolatory SS The ternary 4 –point interpolatory SS: The Laurent-polynomial of this scheme is a ( z ) = a ¡ 5 z ¡ 5 + a ¡ 4 z ¡ 4 + a ¡ 2 z ¡ 2 + a ¡ 1 z ¡ a 1 z + a 2 z 2 + a 4 z 4 + a 5 z 5 f k i = f k i f k i + 1 = a 4 f k i ¡ 1 + a 1 f k i + a ¡ 2 f k i a ¡ 5 f k i + 2 f k i + 2 = a 5 f k i ¡ 1 + a 2 f k i + a ¡ 1 f k i a ¡ 4 f k i + 2

By symmetry and necessary condition, we get mask Let a 1 + a 2 + a 4 + a 5 = 1 3 a 2 ¡ 3 a a 5 = 1 a 4 + a 5 = ¡ 1 9 a 5 = ¡ ¹

Butterfly subdivision scheme

The bivariate Laurent polynomial of this scheme: The symbol of the butterfly scheme: a ( z 1 ; z 2 ) = 3 X i = ¡ 3 3 X j = ¡ 3 a i ; j z i 1 z j 2 a ( z 1 ; z 2 ) = 1 2 ( 1 + z 1 )( 1 + z 2 )( 1 + z 1 z 2 )( 1 ¡ wc ( z 1 ; z 2 ))( z 1 z 2 ) ¡ 1 ; c ( z 1 ; z 2 ) = 2 z ¡ 2 1 z ¡ z ¡ 1 1 z ¡ 2 2 ¡ 4 z ¡ 1 1 z ¡ 1 2 ¡ 4 z ¡ 1 1 ¡ 4 z ¡ z ¡ 1 1 z z 1 z ¡ ¡ 4 z 1 ¡ 4 z 2 ¡ 4 z 1 z z 2 1 z z 1 z 2 2

The verification that the scheme generates requires checking the contractivity of three schemes: Butterfly scheme satisfies: 2 ( 1 + z 1 ) b ( z 1 ; z 2 ) ; 2 ( 1 + z 2 ) b ( z 1 ; z 2 ) ; 2 ( 1 + z 1 z 2 ) b ( z 1 ; z 2 ) w ¡ w = 0 ; w ¡ 2 w + w = 0 ; ¡ w ¡ 2 w ¡ w + w = 0 ; ¡ ¡ 1 2 = 0

Symmetric 8-point Butterfly SS ( 1 ; 2 = ® ) ; ( 3 ; 4 ) = ¯ ) ; ( 5 ; 6 ; 7 ; 8 = ° ) A = ¢¢¢¢ °° ¢ ¢¢ ° ¢ ¯ ¢ ° ¢ ° ¯ ®® ¯ ° ¢¢ ® 1 ® ¢¢ ° ¯ ®® ¯ ° ¢ ° ¢ ¯ ¢ ° ¢¢ ¢ °° ¢¢¢¢

To converges to a surface with, we have This is the same mask of Butterfly scheme: C 0 1 ; 2 = ; 4 = 2 w 5 ; 6 ; 7 ; 8 = ¡ w 2 ° + ¯ = 0 ; ¡ 2 ® + 1 = 0

Symmetric 10-point Butterfly SS ( 1 ; 2 = ® ) ; ( 3 ; 4 = ¯ ) ; ( 5 ; 6 ; 7 ; 8 = ° ) ; ( 9 ; 10 = w ) A = ¢¢¢ w°°w ¢¢ ° ¢ ¯ ¢ ° ¢ ° ¯ ®® ¯ ° w ¢ ® 1 ® ¢ w ° ¯ ®® ¯ ° ¢ ° ¢ ¯ ¢ ° ¢¢ w°°w ¢¢¢

To converges to a surface with, we have We find the mask of 10-point Butterfly scheme: This mask is exact with a modified Butterfly scheme C 0 ° = w 1 ; 2 = 1 2 ¡ w 3 ; 4 = 2 ° 5 ; 6 ; 7 ; 8 = ¡ ° 9 ; 10 = w 2 ° + ¯ = 0 ; ¡ 2 ® ¡ 2 w + 1 = 0

Non-stationary Subdivision Scheme Construction an insertion rule by interpolation with the span of the functions Consider the k-th level insertion rule at the point based on the values at the points the solution of system leads to the insertion rule f 1 ; t ; cos t ; s i n t g µ 2 ¡ k ¡ 1 ¡ µ 2 ¡ k ; 0 ; µ 2 ¡ k ; 2 µ 2 ¡ k

Non-stationary Butterfly Scheme Objective: given a well-known non-stationary 4- point scheme as the following rule: Our objective is to extend this non-stationary 4- point scheme to 2D Butterfly scheme, we denote w k = 1 16 cos ( µ 2 ¡ k ¡ 2 ) cos ( µ 2 ¡ k ¡ 1 )

Definition Two SSs and are asymptotically equivalent if where Theorem 1 Let and be two asymptotically equivalent SSs having finite masks of the same support. Suppose is non-stationary and is stationary. If is and Then the non-stationary scheme is. $S$$S$ f S a k g f S b k g 1 X k = 0 k S a k ¡ S b k k < 1 k S a k k 1 = max f X j a ( k ) 2 ® j ; X j a ( k ) 2 ® + 1 jg f S a k g f S a g f S a k g f S a g f S a g f S a k g C m C m 1 X k = 0 2 m k k S a k ¡ S a k < 1

Lemma For The mask of : $S$$S$ k ¸ 0 ; 0 · µ · ¼ = · w k · 1 8 j w k ¡ 1 16 j · C 2 2 k f S k g

Subdivision operator associated with butterfly scheme has mask: Theorem The non-stationary butterfly scheme is asymptotically equivalent to the stationary butterfly scheme. Moreover, the limit function belong to. S f S k g f S g C 1

Subdivision (Kobbelt) Approximating Scheme Continuity –C 2 regular regions –C 1 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. p 3

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 3 ( p i + p j + p k ) S ( p ) : = ( 1 ¡ ® n ) p + ® n 1 n n ¡ 1 X i = 0 p i

Subdivision Matrix When analyzing the eigen-structure of this matrix, it is not suitable all eigenvalues are complex. S = uvvv ¢¢¢ v 1110 ¢¢¢ ¢¢¢ u = 3 ( 1 ¡ ® n ) ; v = 3 ® = n

Subdivision Matrix The matrix has its eigen-values: The necessary condition for C1:. The choice for the eigen-values: R = ¢¢¢ ¢¢¢ ~ S = RS [ 9 ; ( 2 ¡ 3 ® n ) 2 ; cos ( 2 ¼ 1 n ) ; ¢¢¢ ; cos ( 2 ¼ n ¡ 1 n )] ¸ 1 = 1 > ¸ 2 = ¸ 3 > ¸ i ; i = 4 ;:::; n + 1 ¸ 4 = ¸ 2 2 ) ® n = 4 ¡ 2 cos ( 2 ¼ = n ) 9

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 3 [ 1 ; 2 ; 3 ; 2 ; 1 ] ¤ ( 1 3 [ 1 ; 1 ; 1 ]) 2 = 1 27 [ 1 ; 4 ; 10 ; 16 ; 19 ; 16 ; 10 ; 4 ; 1 ]

Interpolatory -Subdivision Stencil for a new vertex and scheme: p 3 q k + 1 = ( p k 1 + p k 2 + p k 3 ) ¡ 1 81 ( p k 4 + p k 5 + p k 6 ) ¡ 2 81 ( p k 7 + p k 8 + p k 9 + p k 10 + p k 11 + p k 12 )

Interpolatory -Subdivision Modification for extraordinary vertices: For p 3 q k + 1 = ®p k + n ¡ 1 X i = 0 ® i p k i ® = 8 9 ; ® n i = cos ( 2 ¼ i = n ) cos ( 4 ¼ i = n ) n n ¸ 5 n = 3 ® = 8 9 ; ® 0 = 7 27 ; ® 1 = ® 2 = ¡ 2 27 ® = 8 9 ; ® 0 = 7 36 ; ® 1 = ® 3 = 1 27 ; ® 2 = ¡ 5 36 n = 4

Stencil for boundary subdivision p k i ¡ 1 = ¡ 4 81 p k i ¡ p k i ¡ p k i ¡ 5 81 p k i + 1 p k i + 1 = ¡ 5 81 p k i ¡ p k i p k i + 1 ¡ 4 81 p k i + 2 p k 3 i = p k i

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 Why are eigenvalues and vectors so important? same limit ¸ v ; ¸ 2 v ; ¸ 3 v ;::: S v = ¸ v S v ; S 2 v ; S 3 v ;:::

Affine Invariance Sum of row elements must be unit, so What is the interpretation of above relation? is an eigenvector of S and is the corresponding eigenvalue S = = ¸ = 1

Subdivision Limit Position If then S is. 1 = ¸ 0 > ¸ i ; f i = 1 ; n g ¸ 0 C 0 S = V¤V ¡ 1 = £ v 0 v 1 ¢¢¢ v n ¤ ¸ 0 0 ¢¢¢ 0 0 ¸ 1 ¢¢¢ ¢¢¢ ¸ n v ¡ 1 0 v ¡ v ¡ 1 n

To find the limit neighborhood, we must compute All of the vertices of the limit local neighborhood converges to the same position P 1 S 1 P 1 = S 1 P 0 = v ¡ 1 0 v ¡ 1 0 ¢¢¢ v ¡ P 0

Subdivision Derivatives The 1 st derivatives of the subdivision manifold for a parameter direction u defines: We define the 2 nd and 3 rd u = l i m g ! 1 1 ¸ g 1 p g i + 1 ¡ p g i k p 0 i + 1 ¡ p 0 i 2 u 2 = l i m g ! 1 1 ¸ g 2 ( p g i + 1 ¡ p g i ) ¡ ( p g i ¡ p g i ¡ 1 ) k p 0 i + 1 ¡ p 0 i k 3 u 3 = l i m g ! 1 1 ¸ g 3 ( p g i + 2 ¡ 2 p g i p g i ) ¡ ( p g i + 1 ¡ 2 p g i + p g i ¡ 1 ) k p 0 i + 1 ¡ p 0 i k 3

Example: Uniform Cubic Spline Eigen Decomposition of S: S = = V¤V ¡ ¡ ¡ 1 = 22 = ¡ 1 = = 22 = = = = = = 64 = 61 = 60 0 ¡ = 6 ¡ 22 = 611 = 60 1 ¡ 33 ¡ 10 0 ¡ 13 ¡

S g = V¤ g V ¡ 1 = V ¸ g ¸ g ¸ g ¸ g V ¡ 1

Limit Position We derive the formula for the limit position S 1 = = 64 = 61 = = 64 = 61 = = 64 = 61 = = 64 = 61 = = 64 = 61 = P 1 = S 1 P 0 V 0 ; 0 ; 0 = 1 6 V ¡ 2 ; ¡ 1 ; V ¡ 1 ; 0 ; V 0 ; 1 ; 2

1 st Derivatives Differencing and is the same as differencing the corresponding row and of p g i + 1 p g i i + 1 i S S u = D u S g D u = ¡ ¡ ¡ ¡

We derive the subdivision process is P u S u P V 0 ; 0 ; 0 u = ¡ 1 2 V ¡ 2 ; ¡ 1 ; V 0 ; 1 ; S u = l i m g ! 1 1 ¸ g S u = ¡ ¡ ¡ ¡

2 nd Derivatives The same finite differencing can be done to the 1 st derivatives matrix to compute 2 nd 2 S u 2 = D S u D uu = 2 4 ¡ ¡ ¡ S u 2 = 2 4 ¸ g 3 ¸ g 2 ¡ 3 ¸ g 3 ¡ 2 ¸ g ¸ g 3 ¸ g 2 ¡ ¸ g ¸ g 2 ¡ 2 ¸ g 2 ¸ g ¸ g 2 ¡ ¸ g 3 ¡ 2 ¸ g ¸ g 3 ¸ g 2 ¡ 3 ¸ g 3 ¸ g 3 3 5

We derive the subdivision process is 2 S u 2 = l i m g ! 1 1 ¸ g 2 S u 2 = ¡ ¡ ¡ P u 2 2 S u 2 P 2 V 0 ; 0 ; 0 u 2 = V ¡ 2 ; ¡ 1 ; 0 ¡ 2 V ¡ 1 ; 0 ; 1 + V 0 ; 1 ; 2

3 rd Derivatives We can iterate again to check if the subdivision process is C3: The rows are not the same, so the process is not 3 S u 3 = D 2 S u 2 D uuu = · ¡ ¡ 11 3 S u 3 = · ¡ ¸ g 3 3 ¸ g 3 ¡ 3 ¸ g 3 ¸ g ¡ ¸ g 3 3 ¸ g 3 ¡ 3 ¸ g 3 ¸ g 3 ¸

Catmull-Clark Subdivision

Loop Subdivision

Subdivision p 3