Bspline Notes Jordan Smith UC Berkeley CS184. Outline Bézier Basis Polynomials –Linear –Quadratic –Cubic Uniform Bspline Basis Polynomials –Linear –Quadratic.

Slides:



Advertisements
Similar presentations
Computer Graphics (Spring 2008) COMS 4160, Lecture 6: Curves 1
Advertisements

Cubic Curves CSE167: Computer Graphics Instructor: Steve Rotenberg UCSD, Fall 2006.
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.
Lecture 29 of 42 Bezier Curves and Splines Wednesday, 02 April 2008
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
CS CS 175 – Week 9 B-Splines Blossoming, Bézier Splines.
CS CS 175 – Week 9 B-Splines Definition, Algorithms.
Rational Bezier Curves
1 Outline What is polar form? B-Spline –Labeling, why (0,1,2), (1,2,3)… ? –Knot Vector, why (-2,-1,0,1,2,…) ? Derivation of B-Spline points –Maybe(!?)
Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
Spline Interpretation ABC Introduction and outline Based mostly on Wikipedia.
09/04/02 Dinesh Manocha, COMP258 Bezier Curves Interpolating curve Polynomial or rational parametrization using Bernstein basis functions Use of control.
CS CS 175 – Week 8 Bézier Curves Definition, Algorithms.
Modeling of curves Needs a ways of representing curves: Reproducible - the representation should give the same curve every time; Computationally Quick;
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))
Geometric Modeling Surfaces Mortenson Chapter 6 and Angel Chapter 9.
Cubic Bezier and B-Spline Curves
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 9/30/04.
Modelling: Curves Week 11, Wed Mar 23
University of British Columbia CPSC 414 Computer Graphics © Tamara Munzner 1 Curves Week 13, Mon 24 Nov 2003.
Bezier and Spline Curves and Surfaces CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
CS Subdivision I: The Univariate Setting Peter Schröder.
Curve Surfaces June 4, Examples of Curve Surfaces Spheres The body of a car Almost everything in nature.
Review of Bézier Curves DeCastlejau Algorithm V2V2 V4V4 V1V1 V3V3 Insert at t = ¾.
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:
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
(Spline, Bezier, B-Spline)
1 Dr. Scott Schaefer Smooth Curves. 2/109 Smooth Curves Interpolation  Interpolation through Linear Algebra  Lagrange interpolation Bezier curves B-spline.
1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function.
Quadratic Surfaces. SPLINE REPRESENTATIONS a spline is a flexible strip used to produce a smooth curve through a designated set of points. We.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Parametric Curves.
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.
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.
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 Parametric Curves & Surfaces Greg Humphreys University of Virginia CS 445, Spring.
11/26/02(C) University of Wisconsin Last Time BSplines.
Parametric Curves CS 318 Interactive Computer Graphics John C. Hart.
1 Graphics CSCI 343, Fall 2015 Lecture 34 Curves and Surfaces III.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
CS 318 Intro to Computer Graphics John C. Hart
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 12: Curves 1
Blossoms CS 419 Advanced Topics in Computer Graphics John C. Hart
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.
CS552: Computer Graphics Lecture 19: Bezier Curves.
Introduction to Parametric Curve and Surface Modeling.
B(asis)-Splines Ashish Myles CISE, UF. Splines ● Piecewise polynomial ● More flexible than single polynomials – can have finite support – can be periodic.
© University of Wisconsin, CS559 Spring 2004
Bezier Triangles and Multi-Sided Patches
CSE 167 [Win 17], Lecture 9: Curves 1 Ravi Ramamoorthi
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Spring 2004
The Bernstein Basis and Bezier Curves
Curve design 455.
Overview June 9- B-Spline Curves June 16- NURBS Curves
Presentation transcript:

Bspline Notes Jordan Smith UC Berkeley CS184

Outline Bézier Basis Polynomials –Linear –Quadratic –Cubic Uniform Bspline Basis Polynomials –Linear –Quadratic –Cubic Uniform Bsplines from Convolution

Review of Bézier Curves DeCastlejau Algorithm V 001 V 111 V 000 V 011 Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾11 0¾1 Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾¾1 ¾11 0¾10¾1 0¾¾ Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾¾1 ¾11 0¾1 0¾¾ ¾¾¾ Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾¾1 ¾11 0¾1 0¾¾ ¾¾¾ Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾¾1 ¾11 0¾1 0¾¾ ¾¾¾ Insert at t = ¾

Review of Bézier Curves DeCastlejau Algorithm ¾ ¾¾1 ¾11 0¾1 0¾¾ ¾¾¾ Insert at t = ¾

Bézier Curves Summary DeCastlejau algorithm –Evaluate Position(t) and Tangent(t) –Subdivides the curve into 2 subcurves with independent control polygons Subdivision of Bézier curves and convex hull property allows for: –Adaptive rendering based on a flatness criterion –Adaptive collision detection using line segment tests

Linear Bézier Basis Poly’s Bez 1 (t) = VtVt V0V0 V1V1 V0V0 VtVt V1V1 = (1-t) V 0 + t V 1 1-tt Knots: 012

Quadratic Bézier Basis Poly’s V 01 V tt V0tV0t Vt1Vt1 V 00 V 01 V 11 1-tt t t Bez 2 (t) == (1-t) 2 V (1-t)t V 01 + t 2 V 11 V 00 V0tV0t V 11 Vt1Vt1 V tt

Knots: Quadratic Bézier Basis Poly’s Bez 2 (t) = (1-t) 2 V (1-t)t V 01 + t 2 V

Cubic Bézier Basis Poly’s t tt1 t11 0t10t1 0tt ttt V ttt V 0tt V tt1 V 00t V0t1V0t1 V t11 V 111 V 011 V 001 V tt t t t t t Bez 3 (t) == (1-t) 3 V (1-t) 2 t V (1-t)t 2 V t 3 V

Knots: Cubic Bézier Basis Poly’s Bez 3 (t) = (1-t) 3 V (1-t) 2 t V (1-t)t 2 V t 3 V

Blossoming of Bsplines Knots:

Blossoming of Bsplines Knots:

Blossoming of Bsplines Knots:

Blossoming of Bsplines Knots:

Bspline Blossoming Summary Blossoming of Bsplines is a generalization of the DeCastlejau algorithm Control point index triples on the same control line share 2 indices with each other Inserting a knot (t value) –Adds a new control point and curve segment –Adjusts other control points to form a control polygon Inserting the same t value reduces the parametric continuity of the curve A control point triple with all 3 indices equal is a point on the Bspline curve

Uniform Linear Bspline Basis Poly’s B 1 (t) = VtVt V0V0 V1V1 V0V0 VtVt V1V1 = (1-t) V 0 + t V 1 1-tt Knots: 012

Uniform Quadratic Bspline Basis Poly’s B 2 (t) = V tt V0tV0t Vt1Vt1 V -10 V 01 V 12 V 01 Vt1Vt1 V0tV0t V -10 V 12 V tt

Uniform Quadratic Bspline Basis Poly’s Knots: V -10 V 01 V 12

Uniform Cubic Bspline Basis Poly’s B 3 (t) = V 123 V 012 V -101 V V ttt V 0tt V tt1 V -10t V0t1V0t1 V t t tt1 t120t10t1 0tt ttt -2-10

Uniform Cubic Bspline Basis Poly’s Knots: V V -101 V 012 V 123

Uniform Bsplines from Convolution =  10  10  1023 = 102 = 10