Reading. Subdivision curves and surfaces. Subdivision curves. Chaikin s algorithm. Recommended:

Similar documents
Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

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

Cubic Polynomial Curves with a Shape Parameter

Smooth Spline Surfaces over Irregular Meshes

Bezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only

Parametric curves. Reading. Parametric polynomial curves. Mathematical curve representation. Brian Curless CSE 457 Spring 2015

Improved triangular subdivision schemes 1

Reading. Parametric curves. Mathematical curve representation. Curves before computers. Required: Angel , , , 11.9.

Consider the following population data for the state of California. Year Population

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

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

Lecture 24: Bezier Curves and Surfaces. thou shalt be near unto me Genesis 45:10

Pattern Recognition Systems Lab 1 Least Mean Squares

Convex hull ( 凸殻 ) property

SUBDIVISION surfaces are becoming more and more popular

EVALUATION OF TRIGONOMETRIC FUNCTIONS

Parabolic Path to a Best Best-Fit Line:

ABOUT A CONSTRUCTION PROBLEM

condition w i B i S maximum u i

Visualization of Gauss-Bonnet Theorem

A Resource for Free-standing Mathematics Qualifications

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA

Bicubic Polar Subdivision

Tuned Ternary Quad Subdivision

Counting Regions in the Plane and More 1

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

The Platonic solids The five regular polyhedra

The number n of subintervals times the length h of subintervals gives length of interval (b-a).

. Written in factored form it is easy to see that the roots are 2, 2, i,

Math Section 2.2 Polynomial Functions

Lecture 1: Introduction and Strassen s Algorithm

EECS 442 Computer vision. Multiple view geometry Affine structure from Motion

The Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana

Panel Methods : Mini-Lecture. David Willis

Numerical Methods Lecture 6 - Curve Fitting Techniques

Section 7.2: Direction Fields and Euler s Methods

EECS 442 Computer vision. Multiple view geometry Affine structure from Motion

The isoperimetric problem on the hypercube

HARTMUT PRAUTZSCH and GEORG UMLAUF. Fakultat fur Informatik, Universitat Karlsruhe. [prau/umlauf

CHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs

On (K t e)-saturated Graphs

Using VTR Emulation on Avid Systems

Lecturers: Sanjam Garg and Prasad Raghavendra Feb 21, Midterm 1 Solutions

Our Learning Problem, Again

Basic allocator mechanisms The course that gives CMU its Zip! Memory Management II: Dynamic Storage Allocation Mar 6, 2000.

Alpha Individual Solutions MAΘ National Convention 2013

IMP: Superposer Integrated Morphometrics Package Superposition Tool

G 1 Interpolation of arbitrary meshes with Bézier patches

Chapter 3 Classification of FFT Processor Algorithms

Ch 9.3 Geometric Sequences and Series Lessons

APPLICATION NOTE PACE1750AE BUILT-IN FUNCTIONS

Weston Anniversary Fund

Ones Assignment Method for Solving Traveling Salesman Problem

G 2 Tensor Product Splines over Extraordinary Vertices

Extended Space Mapping with Bézier Patches and Volumes

Loop Subdivision Surface Based Progressive Interpolation

Optimum Solution of Quadratic Programming Problem: By Wolfe s Modified Simplex Method

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Accuracy Improvement in Camera Calibration

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design

1.2 Binomial Coefficients and Subsets

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria.

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0

GEORG UMLAUF. Abstract. Tools for the analysis of generalized triangular box spline subdivision schemes are

Recursive Procedures. How can you model the relationship between consecutive terms of a sequence?

A Taste of Maya. Character Setup

Python Programming: An Introduction to Computer Science

1 Graph Sparsfication

The Nature of Light. Chapter 22. Geometric Optics Using a Ray Approximation. Ray Approximation

The golden search method: Question 1

1&1 Next Level Hosting

Spanning Maximal Planar Subgraphs of Random Graphs

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method

COMP 558 lecture 6 Sept. 27, 2010

6.854J / J Advanced Algorithms Fall 2008

Polymorph: Morphing Among Multiple Images

Mathematics and Art Activity - Basic Plane Tessellation with GeoGebra

CS Polygon Scan Conversion. Slide 1

. Perform a geometric (ray-optics) construction (i.e., draw in the rays on the diagram) to show where the final image is formed.

Aberrations in Lens & Mirrors (Hecht 6.3)

Overview Chapter 12 A display model

Guide to Applying Online

Fundamentals of Media Processing. Shin'ichi Satoh Kazuya Kodama Hiroshi Mo Duy-Dinh Le

OCR Statistics 1. Working with data. Section 3: Measures of spread

Python Programming: An Introduction to Computer Science

Efficient Free-Form Surface Modeling with Uncertainty

Orientation. Orientation 10/28/15

Normals. In OpenGL the normal vector is part of the state Set by glnormal*()

One advantage that SONAR has over any other music-sequencing product I ve worked

EE123 Digital Signal Processing

CIS 121 Data Structures and Algorithms with Java Spring Stacks, Queues, and Heaps Monday, February 18 / Tuesday, February 19

freeform: A Tool for Teaching the Mathematics of Curves and Surfaces

Some non-existence results on Leech trees

Hash Tables. Presentation for use with the textbook Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015.

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance

MAXIMUM MATCHINGS IN COMPLETE MULTIPARTITE GRAPHS

Computational Geometry

Image Segmentation EEE 508

Graphs. Minimum Spanning Trees. Slides by Rose Hoberman (CMU)

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming

Transcription:

Readig Recommeded: Stollitz, DeRose, ad Salesi. Wavelets for Computer Graphics: Theory ad Applicatios, 996, sectio 6.-6.3, 0., A.5. Subdivisio curves ad surfaces Note: there is a error i Stollitz, et al., sectio A.5. Equatio A.3 should read: V = VΛ This is already fixed i the hadout. Subdivisio curves Idea: repeatedly refie the cotrol polygo 3 P P P curve is the limit of a ifiite process = lim P j j Chaiki s algorithm Chaki itroduced the followig corer-cuttig scheme i 974: Start with a piecewise liear curve Isert ew vertices at the midpoits (the splittig step) Average each vertex with the ext (clockwise) eighbor (the averagig step) Go to the splittig step 3 4

Averagig masks The limit curve is a quadratic B-splie! Istead of averagig with the earest eighbor, we ca geeralize by applyig a averagig mask durig the averagig step: r = (, r, r, r, ) 0 I the case of Chaiki s algorithm: Lae-Riesefeld algorithm (980) Use averagig masks from Pascal s triagle: r =,,, 0 Gives B-splies of degree +. =0: r = =: =: 5 6 Subdivide ad auseum? After each split-average step, we are closer to the limit curve. How may steps util we reach the fial (limit) positio? Recipe for subdivisio curves Ca we push a vertex to its limit positio without ifiite subdivisio? Yes! After subdividig ad averagig a few times, we ca push each vertex to its limit positio by applyig a evaluatio mask. Each subdivisio scheme has its ow evaluatio mask, mathematically determied by aalyzig the subdivisio ad averagig rules. For Lae-Riesefeld cubic B-splie subdivisio, we get: ( ) 4 6 Now we ca cook up a simple procedure for creatig subdivisio curves: Subdivide (split+average) the cotrol polygo a few times. Use the averagig mask. Push the resultig poits to the limit positios. Use the evaluatio mask. 7 8

DLG iterpolatig scheme (987) Buildig complex models Slight modificatio to subdivisio algorithm: splittig step itroduces midpoits averagig step oly chages midpoits We ca exted the idea of subdivisio from curves to surfaces For DLG (Dy-Levi-Gregory), use: r old = () rew = (,5,0,5, ) 6 Sice we are oly chagig the midpoits, the poits after the averagig step do ot move. 9 0 Subdivisio surfaces Chaiki s use of subdivisio for curves ispired similar techiques for subdivisio surfaces. Iteratively refie a cotrol polyhedro (or cotrol mesh) to produce the limit surface S= lim j usig splittig ad averagig steps. j Triagular subdivisio There are a variety of ways to subdivide a poylgo mesh. A commo choice for triagle meshes is 4: subdivisio each triagular face is split ito four subfaces: 0

Loop averagig step Loop evaluatio ad taget masks Oce agai we ca use masks for the averagig step: As with subdivisio curves, we ca split ad average a umber of times ad the push the poits to their limit positios. where ( β ( )) α( ) = β ( ) α( ) + α( ) + 5 (3+ cos(π / )) β ( ) = 4 3 These values, due to Charles Loop, are carefully chose to esure smoothess amely, taget plae or ormal cotiuity. Note: taget plae cotiuity is also kow as G cotiuity for surfaces. 3 ε( ) + = ε( ) + = τ + τ τ = τ + τ τ T ( ) ( ) ( ) T ( ) ( ) ( ) where 3 ε() = τi () = cos(πi/) β() How do we compute the ormal? 4 Recipe for subdivisio surfaces As with subdivisio curves, we ca ow describe a recipe for creatig ad rederig subdivisio surfaces: Subdivide (split+average) the cotrol polyhedro a few times. Use the averagig mask. Compute two taget vectors usig the taget masks. Compute the ormal from the taget vectors. Push the resultig poits to the limit positios. Use the evaluatio mask. Reder! Addig creases without trim curves I some cases, we wat a particular feature such as a crease to be preserved. With NURBS surfaces, this required the use of trim curves. For subdivisio surfaces, we ca just modify the subdivisio mask: This gives rise to G 0 cotiuous surfaces (i.e., havig positioal but ot taget plae cotiuity) 5 6

Catmull-Clark subdivisio Creases without trim curves, cot. 4: subdivisio of triagles is sometimes called a face scheme for subdivisio, as each face begets more faces. A alterative face scheme starts with arbitrary polygo meshes ad iserts vertices alog edges ad at face cetroids: Here s a example usig Catmull-Clark surfaces (based o subdividig quadrilateral meshes): Catmull-Clark subdivisio: Note: after the first subdivisio, all polygos are quadilaterals i this scheme. 7 8 Iterpolatig subdivisio surfaces Summary Iterpolatig schemes are defied by splittig averagig oly ew vertices The followig averagig mask is used i butterfly subdivisio: What to take home: The meaigs of all the boldfaced terms. How to perform the splittig ad averagig steps o subdivisio curves. How to perform mesh splittig steps for subdivisio surfaces, especially Loop. How to costruct ad reder subdivisio surfaces from their averagig masks, evaluatio masks, ad taget masks. Settig t=0 gives the origial polyhedro, ad icreasig small values of t makes the surface smoother, util t=/8 whe the surface is provably G. 9 0