Smooth Surfaces Dr. Scott Schaefer.

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
1 Dr. Scott Schaefer Bezier Triangles and Multi-Sided Patches.
09/25/02 Dinesh Manocha, COMP258 Triangular Bezier Patches Natural generalization to Bezier curves Triangles are a simplex: Any polygon can be decomposed.
© University of Wisconsin, CS559 Spring 2004
Jehee Lee Seoul National University
On Triangle/Quad Subdivision Scott Schaefer and Joe Warren TOG 22(1) 28 – 36, 2005 Reporter: Chen zhonggui
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
CS Peter Schröder Subdivision I: The Basic Ideas.
Cornell CS465 Fall 2004 Lecture 16© 2004 Steve Marschner 1 Curved surfaces CS 465 Lecture 16.
Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
1 Lecture 13 Modeling Curved Lines and Surfaces. 2 Types of Surfaces Ruled Surfaces B-Splines and Bezier Curves Surfaces of Revolution.
1 Dr. Scott Schaefer The Bernstein Basis and Bezier Curves.
09/09/02 Dinesh Manocha, COMP258 Properties of Bezier Curves Invariance under affine parameter transformation P i B i,n (u) = P i B i,n ((u –a)/(b-a))
1 Dr. Scott Schaefer Tensor-Product Surfaces. 2/64 Smooth Surfaces Lagrange Surfaces  Interpolating sets of curves Bezier Surfaces B-spline Surfaces.
1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation.
Bezier and Spline Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
1 Dr. Scott Schaefer Subdivision Curves. 2/96 What is subdivision? Set of rules S that take a curve as input and produce a more highly refined curve as.
Bezier and Spline Curves and Surfaces CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
1 Dr. Scott Schaefer Generalized Barycentric Coordinates.
Smooth Geometry Images Frank Losasso, Hugues Hoppe, Scott Schaefer, Joe Warren.
Introduction to Subdivision Surfaces. Subdivision Curves and Surfaces 4 Subdivision curves –The basic concepts of subdivision. 4 Subdivision surfaces.
Subdivision surfaces Construction and analysis Martin Reimers CMA/IFI, University of Oslo September 24th 2004.
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
19/13/ :20 UML Graphics II Parametric Curves and Surfaces Session 3.
Surfaces Lecture 6 (Modelling). Reminder: Homogenous Co-ordinates l2D Translations cannot be encoded using matrix multiplication because points at the.
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.
1 Dr. Scott Schaefer Generalized Barycentric Coordinates.
1 Dr. Scott Schaefer Smooth Curves. 2/109 Smooth Curves Interpolation  Interpolation through Linear Algebra  Lagrange interpolation Bezier curves B-spline.
Introduction to Subdivision surfaces Martin Reimers CMA, University of Oslo.
1 Dr. Scott Schaefer Coons Patches and Gregory Patches.
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
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.
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
Lee Byung-Gook Dongseo Univ.
Curves: ch 4 of McConnell General problem with constructing curves: how to create curves that are “smooth” CAD problem Curves could be composed of segments.
Rendering Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Angel:
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
1 Dr. Scott Schaefer Diffusion Curves. 2/38 Diffusion Curves Vector graphics-based representation for 2D images Images are piecewise smooth with discontinuities.
Subdivision Surfaces Dr. Scott Schaefer.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Solid Modeling Dr. Scott Schaefer.
Object Modeling: Curves and Surfaces CEng 477 Introduction to Computer Graphics.
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
Introduction to Parametric Curve and Surface Modeling
Bezier Triangles and Multi-Sided Patches
Advanced Computer Graphics
Advanced Computer Graphics: Parametric Curves and Surfaces
© University of Wisconsin, CS559 Fall 2004
Rendering Curves and Surfaces
CURVES CAD/CAM/CAE.
© University of Wisconsin, CS559 Spring 2004
The Variety of Subdivision Schemes
Surfaces Dr. Scott Schaefer.
The Bernstein Basis and Bezier Curves
Diffusion Curves Dr. Scott Schaefer.
Parametric Line equations
UNIT-5 Curves and Surfaces.
Coons Patches and Gregory Patches
PPT3: B-spline Curves and Surfaces
Introduction to Parametric Curve and Surface Modeling
Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr.
Spline representation. ❖ A spline is a flexible strip used to produce a smooth curve through a designated set of points. ❖ Mathematically describe such.
Overview June 9- B-Spline Curves June 16- NURBS Curves
Last Time B-splines Project 3 was made available
Presentation transcript:

Smooth Surfaces Dr. Scott Schaefer

Smooth Surfaces Lagrange Surfaces Interpolating sets of curves Bezier Surfaces B-spline Surfaces Subdivision Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces

Lagrange Surfaces – Properties Surface interpolates all control points The boundaries of the surface are Lagrange curves defined by the control points on the boundary

Interpolating Sets of Curves Given a set of parametric curves p0(u), p1(u), …, pn(u) , build a surface that interpolates them

Interpolating Sets of Curves Given a set of parametric curves p0(u), p1(u), …, pn(u) , build a surface that interpolates them Evaluate each curve at parameter value u, then use these points as the control points for a Lagrange curve of degree n Evaluate this new curve at parameter value v

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces

Bezier Surfaces – Properties Surface lies in convex hull of control points Surface interpolates the four corner control points Boundary curves are Bezier curves defined only by control points on boundary

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-spline Surfaces

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-splines Surfaces Example

B-spline Surface – Properties Surface inside convex hull of control points Guaranteed to be smooth everywhere Smoothness is determined by number of averaging steps

Arbitrary Topology Surfaces

Arbitrary Topology Surfaces

Subdivision Surfaces Originally a generalization of B-spline surfaces to arbitrary topology Guaranteed to be smooth Geri’s Game copyright Pixar

Subdivision Surfaces Set of rules S applied recursively to some polygon shape p0 pk+1 = S(pk)

Subdivision Surfaces Assume surface is made out of quads Any number of quads may touch a single vertex Subdivision rules: linear subdivision followed by averaging

Linear Subdivision

Linear Subdivision

Averaging

Averaging

Averaging Centroid (average of four black vertices)

Averaging

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Implementing Linear Subdivision linearSub ( F, V ) newV = V newF = {} for each face Fi for j = 1 to 4 ej = getVert ( Fi,j, Fi,j+1) add centroid to newV and store index in c add face (Fi,j, ej, c, ej-1) to newF return (newF, newV)

Implementing Linear Subdivision getVert ( i1, i2 ) if orderless key (i1,i2) not in hash add midpoint of V[i1], V[i2] to newV hash[(i1,i2)] = index of new point return hash[(i1,i2)]

Implementing Averaging Average( F, V ) newV = 0 * V val = array of 0 whose size is number of vertices newF = F for each face Fi cent = centroid for Fi newV[Fi] += cent val[Fi] += 1 for each vertex newV[i] newV[i] /= val[i] return (newF, newV)

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples

Subdivision Surfaces – Examples