Bezier Curves and Splines David Eno MAT 499 Fall ‘06.

Slides:



Advertisements
Similar presentations
Bézier Curves: Integrating Math, Arts and Technology Jomar F. Rabajante UPLB.
Advertisements

Computer Graphics (Spring 2008) COMS 4160, Lecture 6: Curves 1
Parametric Curves Ref: 1, 2.
BEZIER CURVES Part II. Assume we are given two endpoints labelled E1 and E2 and two control points labelled C1 and C2. create a smooth curve whose endpoints.
Interpolation A method of constructing a function that crosses through a discrete set of known data points. .
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 13: NURBs, Spline Surfaces Ravi Ramamoorthi Some material.
Cubic Curves CSE167: Computer Graphics Instructor: Steve Rotenberg UCSD, Fall 2006.
ICS 415 Computer Graphics Bézier Splines (Chapter 8)
Cubic Curves CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
© University of Wisconsin, CS559 Spring 2004
1 Introduction Curve Modelling Jack van Wijk TU Eindhoven.
Computational Methods in Physics PHYS 3437
Lecture 29 of 42 Bezier Curves and Splines Wednesday, 02 April 2008
Splines II – Interpolating Curves
Spline Interpretation ABC Introduction and outline Based mostly on Wikipedia.
1 Lecture 13 Modeling Curved Lines and Surfaces. 2 Types of Surfaces Ruled Surfaces B-Splines and Bezier Curves Surfaces of Revolution.
Cubic Bezier and B-Spline Curves
Curves Mortenson Chapter 2-5 and Angel Chapter 9
Bezier and Spline Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Modelling: Curves Week 11, Wed Mar 23
Computer Graphics (Fall 2005) COMS 4160, Lecture 7: Curves 2
RASTER CONVERSION ALGORITHMS FOR CURVES: 2D SPLINES 2D Splines - Bézier curves - Spline curves.
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.
COEN Computer Graphics I
Curve Surfaces June 4, Examples of Curve Surfaces Spheres The body of a car Almost everything in nature.
Splines III – Bézier Curves
Curve Modeling Bézier Curves
Bresenham’s Algorithm. Line Drawing Reference: Edward Angel’s book: –6 th Ed. Sections 6.8 and 6.9 Assuming: –Clipped (to fall within the window) –2D.
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.
(Spline, Bezier, B-Spline)
V. Space Curves Types of curves Explicit Implicit Parametric.
Introduction to Computer Graphics with WebGL
Spline Representations
Numerical Computation
Review of Interpolation. A method of constructing a function that crosses through a discrete set of known data points.
Vector Computer Graphic. Vector entities Line Circle, Ellipse, arc,… Curves: Spline, Bezier’s curve, … … Areas Solids Models.
Chapter 4 Representations of Curves and Surfaces.
Chapter VI Parametric Curves and Surfaces
INTERPOLATION & APPROXIMATION. Curve algorithm General curve shape may be generated using method of –Interpolation (also known as curve fitting) Curve.
June D Object Representation Shmuel Wimer Bar Ilan Univ., School of Engineering.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Parametric Curves.
1 CS 430/536 Computer Graphics I Curve Drawing Algorithms Week 4, Lecture 8 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing.
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS Representation of Curves and Surfaces Graphics.
CS 376 Introduction to Computer Graphics 04 / 25 / 2007 Instructor: Michael Eckmann.
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.
Computer Graphics (Fall 2003) COMS 4160, Lecture 10: Curves 1 Ravi Ramamoorthi
Parametric Curves CS 318 Interactive Computer Graphics John C. Hart.
CSCE 441: Keyframe Animation/Smooth Curves (Cont.) Jinxiang Chai.
CS 450: Computer Graphics PARAMETRIC SPLINES AND SURFACES
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 12: Curves 1
Computing & Information Sciences Kansas State University Lecture 30 of 42CIS 636/736: (Introduction to) Computer Graphics Lecture 30 of 42 Wednesday, 09.
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:
Curves University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
Piecewise Polynomial Parametric Curves Sun-Jeong Kim.
Object Modeling: Curves and Surfaces CEng 477 Introduction to Computer Graphics.
Introduction to Parametric Curve and Surface Modeling.
CS5500 Computer Graphics May 11, 2006
Parametric Curves cgvr.korea.ac.kr.
CSE 167 [Win 17], Lecture 9: Curves 1 Ravi Ramamoorthi
Parametric Curves.
CURVES CAD/CAM/CAE.
© University of Wisconsin, CS559 Spring 2004
Three-Dimensional Object Representation
Introduction to Parametric Curve and Surface Modeling
Type to enter a caption. Computer Graphics Week 10 Lecture 2.
Presentation transcript:

Bezier Curves and Splines David Eno MAT 499 Fall ‘06

Introduction In Engineering, one often wants a smooth curve through a set of known points. In Physics, a smooth curve is required to represent the shape of a deflected beam. Computer Aided Design and Manufacturing programs like lines and circular arcs. –Lots of things cannot be conveniently described by lines and circular arcs.

Bézier Curves Bézier Curves were first developed in 1959 by Paul de Casteljau. They were popularized in 1962 by French engineer Pierre Bézier, who used them to design automobile bodies.

Quadratic Bézier Curves Given three points P 0, P 1, and P 2, a quadratic Bézier curve is the path traced by the parabolic function:

Quadratic Bézier Curve Given points P 0, P 1, P 2.

Quadratic Bézier Curve Given points P 0, P 1, P 2. Construct a line from (1-t)P 0 + tP 1 to (1-t)P 1 + tP 2

Quadratic Bézier Curve Given points P 0, P 1, P 2. Construct a line from (1-t)P 0 + tP 1 to (1-t)P 1 + tP 2 The point, x, is on the curve.

Quadratic Bézier Curve Given points P 0, P 1, P 2. Construct a line from (1-t)P 0 + tP 1 to (1-t)P 1 + tP 2 The point, x, is on the curve.

Bézier Curve Advantages 3 points uniquely determine a parabola. It’s easy to calculate points. The numerical algorithm is stable. (i.e. given reasonable input, the algorithm won’t blow up.)

Cubic Bézier Curve Extending this method to use four points, we can construct a cubic curve. (1-t) 3 P 0 + 3t(1-t) 2 P 1 + 3t 2 (1-t)P 2 + t 3 P 3

In General… To construct an n th degree Bezier curve, you need n+1 control points. The formula for a point on the curve is:

Recursion Pseudo code for recursive technique: makeBezier(Control Points) If points are collinear enough Output last point Else Subdivide points makeBezier(Left Control Points) makeBezier(Right Control Points) End If

Bezier Splines We typically want a smooth curve that passes though a set of points. Problem: The first and last control points are the only ones guaranteed to be on a Bezier Curve. A Solution: Use Bezier Splines, which are composite (i.e. piecewise) Bezier Curves. –But then we need to compute control points.

Cubic Bezier Splines We could make splines from Bezier curves of any degree. We choose cubic (degree = 3) curves for the following reasons: –In modeling the bending of beams because of the "bending moment" (which is related to equilibrium) is proportional to the second derivative (i.e. C2) of the displacement function and to be physically valid there must be bending moment continuity from one element to the next. –Cubic polynomials allow for inflection points. –The computations aren’t horrible.

P0P0 P1P1 P2P2 P3P3 P4P4

P 0 =b 0,0 P 1 =b 0,3 =b 1,0 P2P2 P3P3 P4P4 b 0,1 b 0,2

Computing Control Points Condition: C0 continuity –Each curve has to start where the previous one ends. In general, Or

Computing Control Points Condition: C1 continuity –The slopes have to match at the common endpoints. –So set first derivatives equal.

Computing Control Points Condition: C2 continuity –Provides better smoothing. –Gives us a unique solution. Arbitrarily let

Computing Control Points

NURBS Add a Weight coordinate.

Questions and Comments How do you prevent cusps? Can de Casteljau’s algorithm be modified to construct NURBS?

Further Direction(s) B-splines provide local control over the spline, we think.