Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 13: NURBs, Spline Surfaces Ravi Ramamoorthi Some material.

Slides:



Advertisements
Similar presentations
Lecture 14 Curves and Surfaces II
Advertisements

Splines IV – B-spline Curves
Lecture Notes #11 Curves and Surfaces II
Computer Graphics (Spring 2008) COMS 4160, Lecture 6: Curves 1
Lecture 10 Curves and Surfaces I
Anupam Saxena Associate Professor Indian Institute of Technology KANPUR
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 7: Quadric Error Metrics Ravi Ramamoorthi
Overview June 9- B-Spline Curves June 16- NURBS Curves June 30- B-Spline Surfaces.
© University of Wisconsin, CS559 Spring 2004
Jehee Lee Seoul National University
B-Spline Blending Functions
1 Curves and Surfaces. 2 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized.
Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 11: Curves Problems
Informationsteknologi Monday, December 10, 2007Computer Graphics - Class 161 Today’s class Curve fitting Evaluators Surfaces.
Rational Bezier Curves
Offset of curves. Alina Shaikhet (CS, Technion)
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 12: Spline Curves (review) Ravi Ramamoorthi Most material.
1 Lecture 13 Modeling Curved Lines and Surfaces. 2 Types of Surfaces Ruled Surfaces B-Splines and Bezier Curves Surfaces of Revolution.
Geometric Modeling Surfaces Mortenson Chapter 6 and Angel Chapter 9.
A story about Non Uniform Rational B-Splines E. Shcherbakov.
Curves Mortenson Chapter 2-5 and Angel Chapter 9
Computer Graphics (Fall 2008) COMS 4160, Lectures 8,9: Curves Problems
Bezier and Spline Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
ENDS 375 Foundations of Visualization Geometric Representation 10/5/04.
Computer Graphics (Fall 2005) COMS 4160, Lecture 7: Curves 2
Bezier and Spline Curves and Surfaces CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
B.Sc. Multimedia Computing3D Modelling and Animation Nurbs Modelling.
CS 376 Introduction to Computer Graphics 04 / 27 / 2007 Instructor: Michael Eckmann.
Curve Modeling Bézier Curves
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.
Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 9: Introduction to Spline Curves.
V. Space Curves Types of curves Explicit Implicit Parametric.
Introduction to Computer Graphics with WebGL
Chapter VI Parametric Curves and Surfaces
CS 445/645 Fall 2001 Splines/Film/Animation. Final Exam Thursday, December 13 th from 7 – 10 p.m. –Room Olsson 011 You may use one sheet of notes (8.5.
Splines IV – B-spline Curves based on: Michael Gleicher: Curves, chapter 15 in Fundamentals of Computer Graphics, 3 rd ed. (Shirley & Marschner) Slides.
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.
Computer Graphics Representing Curves and Surfaces.
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
Keyframing and Splines Jehee Lee Seoul National University.
Ship Computer Aided Design MR 422. Geometry of Curves 1.Introduction 2.Mathematical Curve Definitions 3.Analytic Properties of Curves 4.Fairness of Curves.
CS 376 Introduction to Computer Graphics 04 / 25 / 2007 Instructor: Michael Eckmann.
Representation of Curves & Surfaces Prof. Lizhuang Ma Shanghai Jiao Tong University.
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.
Parametric Curves & Surfaces
Rational Curve. Rational curve Parametric representations using polynomials are simply not powerful enough, because many curves (e.g., circles, ellipses.
Computer Graphics (Fall 2003) COMS 4160, Lecture 10: Curves 1 Ravi Ramamoorthi
Computing & Information Sciences Kansas State University Lecture 31 of 42CIS 636/736: (Introduction to) Computer Graphics Lecture 32 of 42 Wednesday, 11.
11/26/02(C) University of Wisconsin Last Time BSplines.
(c) 2002 University of Wisconsin
Slide 129 October 1999CS Computer Graphics (Top Changwatchai) Bézier Curves - Results of Derivation Tangents at endpoints are equal to endpoint slopes.
Chapter 8 Engineering Geometry
1 CS 430/536 Computer Graphics I B-Splines and NURBS Week 5, Lecture 9 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
CS 325 Computer Graphics 04 / 30 / 2010 Instructor: Michael Eckmann.
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 12: Curves 1
Introduction to Parametric Curve and Surface Modeling.
© University of Wisconsin, CS559 Spring 2004
Representation of Curves & Surfaces
CSE 167 [Win 17], Lecture 10: Curves 2 Ravi Ramamoorthi
CSE 167 [Win 17], Lecture 11: Curves Problems Ravi Ramamoorthi
CSE 167 [Win 17], Lecture 9: Curves 1 Ravi Ramamoorthi
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Spring 2004
Chapter XVII Parametric Curves and Surfaces
CSCI 440 Computer Graphics
Three-Dimensional Object Representation
Introduction to Parametric Curve and Surface Modeling
Overview June 9- B-Spline Curves June 16- NURBS Curves
Presentation transcript:

Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 13: NURBs, Spline Surfaces Ravi Ramamoorthi Some material courtesy Szymon Rusinkiewicz

To Do / Motivation  Questions??  One of written questions in assignment deals with material in this lecture  Otherwise, mainly intended for completeness, since splines are very common modeling tool  This lecture discusses extensions to rational (beyond polynomial) splines, NURBs and surfaces

Outline  Rational Splines  Quadratic rational splines  NURBs (briefly)  Parametric patches (briefly)

Parametric Polynomial Curves  A parametric polynomial curve of order n:  Advantages of polynomial curves  Easy to compute  Infinitely differentiable everywhere

Rational Splines  Can’t represent certain shapes (e.g. circles) with piecewise polynomials  Wider class of functions: rational functions  Ratio of polynomials  Can represent any quadric (e.g. circles) exactly  Mathematical trick: homogeneous coordinates  Ratio of 2 polynomials in 3D equivalent to single polynomial in 4D

Rational Splines  Example: creating a circular arc with 3 control points (0,0) (0,1)(1,1) Polynomial spline: parabolic arc (0,0;1) (1,1;1) Rational spline: circular arc (???)

Standard deCasteljau Standard deCasteljau A B

Rational deCasteljau A B

Homogeneous deCasteljau Non-rational splines simply have all weights set to 1 instead

Outline  Rational Splines  Quadratic rational splines  NURBs (briefly)  Parametric patches (briefly)

Evaluation: Rational Splines  Add an extra weight coordinate Multiply standard coords of control point by weight (essentially the same as the use of homogeneous coords)  Apply standard deCasteljau or other evaluation alg.  Divide by final value of weight coordinate Essentially the same as perspective division/dehomogenize  Rational because of final division: Rational polynomial at the end (ratio of two polynomials)

Quadratic Bezier Curve  Example: quarter-circle arc, weight midpoint  Smaller w: pulled away from middle control point  Larger w: pulled towards middle control point (0,0;1) (0,1;1)(1,1;1) Polynomial spline: parabolic arc (0,0;1) (1,1;1) Rational spline: result depends on w (0,1;w)

Quadratic Bezier Curve General Bezier Formula for quadratic? (0,0;1) (0,1;1)(1,1;1) Polynomial spline: parabolic arc (0,0;1) (1,1;1) Rational spline: result depends on w (0,1;w)

Dependence of curve on w  For w very large, curve pulled toward middle control point, get a section of a hyperbola  For w = 1 (standard spline), standard parabola  For w < 1, positive, curve moves away from middle control point  For w = 0, curve becomes a straight line  When is curve part of a circle? (homework)

Mid-Point (t = ½ ?)

W very large (0,0;1) (0,1;>>1)(1,1;1)

W = 1 (non-rational spline) (0,0;1) (0,1;1)(1,1;1) Polynomial spline: parabolic arc

W < 1 (0,0;1) (1,1;1) Rational spline: result depends on w (0,1;w)

W = 0 (0,0;1) (1,1;1) Straight Line (0,1;w)

Outline  Rational Splines  Quadratic rational splines  NURBs (briefly)  Parametric patches (briefly)

NURBS  Non-uniform (vary time interval per segment)  Rational  B-Splines  Can model a wide class of curves and surfaces  Same convenient properties of B-Splines  Still widely used in CAD systems

Polar Forms: Cubic Bspline Curve -2 –1 0 –  For Uniform B-splines, uniform knot vector (below)  For non-uniform, only require non-decreasing, not necessarily uniform (can be arbitrary) Uniform knot vector: -2, -1, 0, 1, 2,3 Labels correspond to this

NURBS

Outline  Rational Splines  Quadratic rational splines  NURBs (briefly)  Parametric patches (briefly)

Parametric Patches  Each patch is defined by blending control points FvDFH Figure 11.44

Parametric Patches  Point Q(u,v) on the patch is the tensor product of curves defined by the control points Watt Figure 6.21 Q(u,v) Q(0,0) Q(1,0) Q(0,1) Q(1,1)

Parametric Bicubic Patches  Point Q(u,v) defined by combining control points with polynomial blending functions: Where M is a matrix describing the blending functions for a parametric cubic curve (e.g., Bezier, B-spline, etc.)

Summary  Splines still used commonly for modeling  Start with simple spline curves (Bezier, uniform non- rational B-splines)  Discussed extension to rational curves (add homogeneous coordinate for rational polynomial)  Brief discussion of NURBs: widely used  Brief discussion of Parametric patches for modeling surfaces (rather than curves)