UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

Similar documents
Subdivision Surfaces

Subdivision Curves and Surfaces

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface.

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

Subdivision Curves and Surfaces: An Introduction

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

Subdivision overview

Curve Corner Cutting

Subdivision Surfaces

Interpolatory 3-Subdivision

Advanced Graphics. Subdivision Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

u 0+u 2 new boundary vertex

INF3320 Computer Graphics and Discrete Geometry

CS354 Computer Graphics Surface Representation III. Qixing Huang March 5th 2018

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

Curves and Surfaces 2

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

Recursive Subdivision Surfaces for Geometric Modeling

Subdivision on Arbitrary Meshes: Algorithms and Theory

09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces

Advanced Geometric Modeling CPSC789

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Subdivision Surfaces. Homework 1: Questions/Comments?

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches

Modified Catmull-Clark Methods for Modelling, Reparameterization and Grid Generation

Polar Embedded Catmull-Clark Subdivision Surface

A subdivision scheme for hexahedral meshes

Normals of subdivision surfaces and their control polyhedra

Technical Report. Removing polar rendering artifacts in subdivision surfaces. Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin.

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Non-Uniform Recursive Doo-Sabin Surfaces

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Non-Uniform Recursive Doo-Sabin Surfaces (NURDSes)

Computer Graphics Curves and Surfaces. Matthias Teschner

Subdivision Surfaces

Subdivision curves. University of Texas at Austin CS384G - Computer Graphics

Spline Surfaces, Subdivision Surfaces

Computergrafik. Matthias Zwicker. Herbst 2010

Grid Generation and Grid Conversion by Subdivision Schemes

A subdivision scheme for hexahedral meshes

Triangle Mesh Subdivision with Bounded Curvature and the Convex Hull Property

Joe Warren, Scott Schaefer Rice University

A Continuous 3-D Medial Shape Model with Branching

Evaluation of Loop Subdivision Surfaces

Lecture 3 Mesh. Dr. Shuang LIANG. School of Software Engineering Tongji University Spring 2013

Subdivision based Interpolation with Shape Control

Removing Polar Rendering Artifacts in Subdivision Surfaces

Honeycomb Subdivision

3D Modeling Parametric Curves & Surfaces

G 2 Interpolation for Polar Surfaces

REAL-TIME SMOOTH SURFACE CONSTRUCTION ON THE GRAPHICS PROCESSING UNIT

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

Normals of subdivision surfaces and their control polyhedra

Parametric description

Ternary Butterfly Subdivision

Hierarchical Grid Conversion

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations

Physically-Based Modeling and Animation. University of Missouri at Columbia

2001, Denis Zorin. Subdivision Surfaces

An Interpolatory Subdivision for Volumetric Models over Simplicial Complexes

An Efficient Data Structure for Representing Trilateral/Quadrilateral Subdivision Surfaces

Generalizing the C 4 Four-directional Box Spline to Surfaces of Arbitrary Topology Luiz Velho Abstract. In this paper we introduce a new scheme that g

G 2 Bezier Crust on Quad Subdivision Surfaces

Efficient GPU Rendering of Subdivision Surfaces. Tim Foley,

Fast Rendering of Subdivision Surfaces

Smooth Subdivision of Tetrahedral Meshes

Geometric modeling 1

Pairs of Bi-Cubic Surface Constructions Supporting Polar Connectivity

Meshes and Manifolds. Computer Graphics CMU /15-662

3D Modeling techniques

On Smooth Bicubic Surfaces from Quad Meshes

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

Exact Evaluation Of Catmull-Clark Subdivision Surfaces At Arbitrary Parameter Values

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Smooth Surface Reconstruction using Doo-Sabin Subdivision Surfaces

Volume Enclosed by Example Subdivision Surfaces

Subdivision surfaces for CAD: integration through parameterization and local correction

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t)

SURFACE FAIRING FOR SHIP HULL DESIGN

Local Modification of Subdivision Surfaces Based on Curved Mesh

08 - Designing Approximating Curves

Geometry Processing & Geometric Queries. Computer Graphics CMU /15-662

4 8 Subdivision. Luiz Velho a and Denis Zorin b

CS-184: Computer Graphics

Approximate Geodesics on Smooth Surfaces of Arbitrary Topology

Geometric Modeling in Graphics

Approximating Subdivision Surfaces with Gregory Patches for Hardware Tessellation

Approximate Catmull-Clark Patches. Scott Schaefer Charles Loop

Smooth Surfaces from 4-sided Facets

Subdivision Scheme Tuning Around Extraordinary Vertices

QUADRATIC UNIFORM B-SPLINE CURVE REFINEMENT

SEMIREGULAR PENTAGONAL SUBDIVISIONS

To appear in Computer-Aided Design Revised June 18, J-splines

Rendering Subdivision Surfaces Efficiently on the GPU

Surface Quality Assessment of Subdivision Surfaces on Programmable Graphics Hardware

Smooth Patching of Refined Triangulations

Nonmanifold Subdivision

Transcription:

Subdivision Surfaces

Surfaces Having arbitrary Topologies Tensor Product Surfaces Non Tensor Surfaces We can t find u-curves and v-curves in general surfaces

General Subdivision Coarse mesh Subdivision Fine mesh

Change the approach of applying curve schemes

Example of Subdivision

Topology: split face/vertex Geometry: use subdivision masks to smooth out

Use Local masks Extend Chaikin : Doo-Sabin Extend cubic B-spline: Catmull-Clark

Local mask from Chaikin Interior vertices 9/16 3/16 3/16 1/16

Generating function y x

Local mask from cubic Bspline Face points face vertex ¼ ¼ ¼ ¼

Edge-Vertex edge - vertex 1/16 1/16 3/8 3/8 1/16 1/16

Extra-ordinary vertices!

Parametric smoothness and geometric smoothness Regular: inherited from u and v curves Usually parametric smoothness Ir regular: usually geometric smoothness can be checked

Catmull-Clarck Subdivision It is introduced in Computer Aided Design 1978. based on the tensor product of cubic Bspline at regular points and with the smooth tangent at extraordinary points SIGGRAPH 98

Catmull-Clarck Subdivision Splitting each face into a collection of quadrilateral subfaces The new vertices are computed using certain weighted average

Bi-cubic B-Spline subdivision to a general subdivision surface

Weighted average Three different types of vertices Face point Edge point Vertex point

Boundary

Boundary, sharp edges, corners Cubic B-Spline curve masks for boundary and sharp edges Crease is a chain of sharp edges Corner points keep unchanged Red edges are tagged sharp sharp creases are used between the skin and the finger nails

Separate Geometry and Connectivity list of vertices list of faces storing pointers for its vertices efficient for many applications (well fit to Graphics pipeline) obj format from Alias/wavefront (Maya) MD2 format (Games) V F 1,2,3,4

Obj Example Tetrahedron # Obj file format with ext.obj v 1.0 1.0 1.0 v 2.0 0.0 0.0 v 0.0 0.0 0.0 v 1.0 1.6 0.0 f 1 3 2 f 1 2 4 f 1 4 3 f 2 3 4

Inefficiencies for mesh processing and subdivision surfaces Queries Given a vertex, Which edges are share it? Given a vertex, Which vertices are adjacent to it? Given an edge which faces are adjacent to it? Better methods?? o half edge o VV

Half-edge El V1 Er Split the edge into two records (half-edge) Assign all necessary information to each half Face and vertex list index to the half-edge list Traversing of the edges, vertices!? The only weakness :non-orientable surfaces: Moebius strip, Klein bottle Half edge V2 vertex //the vertex at the beginning face //at the left Face Half edge Vertex next //next half edge around the face Half_edge 3D Coordinate Normal pair //the opposite half edge

Example Vertex half-edge x y z V1 V2 Ex (or Hy) Gx H y V 1 Vertex List face half-edge F 2 E y E x F 1 F1 Ex or Gx F2 Hy G x half_edge vertex ( source). Face List face (left) next (half-edge) V 2 pair (half-edge) Ex V1 F1 Gx Ey Ey V2 F2 Hy Ex Half edge

Analysis of Subdivision

Analysis of Subdivision We just have a subdivision matrix or mask How can we guarantee the convergence of the scheme and the smoothness of the limit surface (curve)? How does the limit surface behave around an extraordinary point? smoothness? convergence?

Cubic B-spline Subdivision Illustration by cubic B-spline subdivision We know just the subdivision matrix New notations P j : control point vector in j-th level S j : related subdivision matrix What is the difference between S j and S j+1? The same structures but different dimensions

Local Subdivision Matrix S j and S j+1 have been formed by the same local matrix S j = S = Without j : local subdivision matrix

Geometric Interpretation S S Invariant neighborhoods : 5 old control points 5 new control points Most properties may be checked by the local matrix Continuity Stability Differentiability (S controls behavior of the curve in a neighborhood)

Eigen Analysis Successive applying of a matrix relates to eigenvectors and values. x Ax Special vector Eigenvector and eigenvalue Ax Ax = λ x, x 0 corresponding eigenvalue x right eigenvector

Eigenvalue Evaluation Given A, what are eigenvectors and values? det( A λ I ) = 0 similarity A B The same eigenvalue B = P 1 A is symmetric AP Transforming A to an easy computable eigenvalues B by preserving similarity all eigenvalues are real

Why are these eigenvalues and vectors so important? The same limit

Related Matrices for cubic B-Spline

Some Properties SX = XD 1 X SX = D (Similarity of matrices) ~ x 1 i X The rows of are called left eigenvectors (why?) P R for any (non defective) 5 we can write P 4 = a i x i, a i = ~ x i. p i = 0 We have assumed it is non defective We can easily extend this for any dimension (repeating for any component)

Convergence and Stability P 0 : initial control points, S :local matrix In this case the subdivision process doesn t converge

Non-trivial results We must have (isn t interesting) Therefore, a 0.x 0 How about the case :

Exact Limit of Subdivision For stability and convergence we must have: This property is true for cubic S S S Limit? We can find a 0 from

Affine Invariance Sum of row elements must be the unit, therefore: What is the interpretation of above? is an eigenvector of S, and is the corresponding eigenvalue

Affine Invariance Sufficient and necessary condition for unit summation property: 1: eigenvector 1: eigenvalue We have this property for cubic B spline subdivision

Geometric Approach for smoothness Geometric and intuitive approach: S S S and approach to the same direction

Smoothness We know,and We can choose coordinate system such that a 0 becomes the origin. We have (by dropping i=0) Dividing by, we obtain Here will dominate the behavior of P j The unique configuration at infinity

Left and Right Tangents Left tangent Right tangent

The tangent line Up to scaling by the control set approaches a fixed configuration Therefore we just obtain the geometric continuity( and not parametric continuity ) We can repeat the similar analysis for G 2 But not to the third derivative (why?)

Double Eigenvalue For, two eigenvectors are associated to only one single eigenvalue! The points in the limit configuration will be linear combinations of two vectors x 3 and x 4

Analysis of Dyn-Levin Interpolating Subdivision S is minimum size local subdivision! We have a stable and convergent scheme There is a G 1 continuity The limit curve is not necessary G 2

Surface Analysis The convergence analysis of subdivision schemes is generally done in two steps: First step. Regular meshes (for example for triangular meshes all vertices having valence 6). Second step. Extraordinary sections of meshes Subdivided meshes are regular almost everywhere (referring to standard bicubic, biquadratic,. for analyzing ) Using eigenanalysis for local subdivision matrix in extra ordinary meshes.

Loop Subdivision A triangle based subdivision

Split/average sub steps Limit surface Each step consists of split and average steps Face split of triangular meshes: one to four

Correspondence Split without averaging

Face Splitting A F D C B Every face splits to four new faces F A,B,C,D Updating the face structure Or equivalently: insert midpoints

Mask for Edge-Vertex Edge-vertex mask edge-vertex vertex-vertex

Mask for Vertex-Vertex n: number of adjacent vertices (valences) n > s has much more influence on than other neighbors n=3, or

Example: regular mask(n=6) Displacement Mask

Invariant Neighborhood

Loop Subdivision Extraordinary Convergence and stability

The eigen structure for Loop (extra-ordinary n=3) S = 7/16 3/16 3/16 3/16 3/8 3/8 1/8 1/8 3/8 1/8 3/8 1/8 3/8 1/8 1/8 3/8 X = 1/2 * * -2089/3191 1/2-533/3876 660/883 769/1762 1/2-725/1154-1759/2672 769/1762 1/2 2259/2950-78/875 769/1762 D = 1 0 0 0 0 1/4 0 0 0 0 1/4 0 0 0 0 1/16 >> Xinv 4/5 2/5 2/5 2/5 * -482/1423-2575/5172 855/1022 * 482/581-594/1105-224/767-505/551 505/1653 505/1653 505/1653

Analyzing the smoothness (eigenvectors form a basis set) We assume, and are subdominant eigenvalues We again set

Smoothness for a Simple Case: geometric description Set We have Therefore V 1, V 2 and V 3 belong to a unique plane (N,p 0 )

Summary: The limit of control points approaches a fixed configuration This configuration is determined by x 1 and x 2 a 1 and a 2 span the tangent plane

Reif s Sufficient Condition 1-Eigenvalues: 2-The characteristic map is regular one-to-one and onto) (see Warren s book for details) Eigenvalues Specific conditions Desirable properties

The cause of cosine terms in subdivision Local subdivision matrices are partitioned to some cirulant matrices

The cause of cosine terms in subdivision Eigenvalues of cirulant matrices are expressed by the roots of unity or discrete Fourier transform i.e.

More Reading for Subdivision Analyzing U.Rief, A Unified Approach to Subdivision Algorithms Near Extraordinary Vertices, CAGD 12 (1995), pp 153 174. J.Warren and H.Weiner, Subdivision Methods for Geometric Design, Morgan Kaufmann, (2002).