CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside

Similar documents
Design considerations

CS130 : Computer Graphics Curves. Tamar Shinar Computer Science & Engineering UC Riverside

08 - Designing Approximating Curves

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

Computer Graphics Curves and Surfaces. Matthias Teschner

3D Modeling Parametric Curves & Surfaces

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Curves and Surfaces for Computer-Aided Geometric Design

Lecture IV Bézier Curves

(Spline, Bezier, B-Spline)

Central issues in modelling

Bézier Splines. B-Splines. B-Splines. CS 475 / CS 675 Computer Graphics. Lecture 14 : Modelling Curves 3 B-Splines. n i t i 1 t n i. J n,i.

Curves and Surfaces Computer Graphics I Lecture 9

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

CS 475 / CS Computer Graphics. Modelling Curves 3 - B-Splines

Information Coding / Computer Graphics, ISY, LiTH. Splines

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

Curves and Surfaces 1

Splines. Connecting the Dots

2D Spline Curves. CS 4620 Lecture 13

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1

Splines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes

2D Spline Curves. CS 4620 Lecture 18

Sung-Eui Yoon ( 윤성의 )

Curves D.A. Forsyth, with slides from John Hart

Computer Graphics Splines and Curves

Bezier Curves, B-Splines, NURBS

Remark. Jacobs University Visualization and Computer Graphics Lab : ESM4A - Numerical Methods 331

Intro to Modeling Modeling in 3D

CS-184: Computer Graphics

CS-184: Computer Graphics. Today

Introduction to Computer Graphics

Rendering Curves and Surfaces. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Know it. Control points. B Spline surfaces. Implicit surfaces

Curves. Computer Graphics CSE 167 Lecture 11

Intro to Curves Week 4, Lecture 7

CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Computer Graphics. Curves and Surfaces. Hermite/Bezier Curves, (B-)Splines, and NURBS. By Ulf Assarsson

OUTLINE. Quadratic Bezier Curves Cubic Bezier Curves

Need for Parametric Equations

Curves and Surfaces Computer Graphics I Lecture 10

Review of Tuesday. ECS 175 Chapter 3: Object Representation

Curves and Surfaces. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd

Intro to Curves Week 1, Lecture 2

Representing Curves Part II. Foley & Van Dam, Chapter 11

CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2

09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo

A story about Non Uniform Rational B-Splines. E. Shcherbakov

Properties of Blending Functions

MA 323 Geometric Modelling Course Notes: Day 14 Properties of Bezier Curves

CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

CSE 167: Introduction to Computer Graphics Lecture #13: Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017

Derivative. Bernstein polynomials: Jacobs University Visualization and Computer Graphics Lab : ESM4A - Numerical Methods 313

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail

Freeform Curves on Spheres of Arbitrary Dimension

Objects 2: Curves & Splines Christian Miller CS Fall 2011

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

Computergrafik. Matthias Zwicker. Herbst 2010

Computer Graphics Spline and Surfaces

Parametric curves. Brian Curless CSE 457 Spring 2016

Rational Bezier Curves

An Introduction to B-Spline Curves

Computer Graphics I Lecture 11

Parametric Surfaces. Michael Kazhdan ( /657) HB , FvDFH 11.2

Spline Notes. Marc Olano University of Maryland, Baltimore County. February 20, 2004

B(asis) Splines. Ashish Myles CISE, UF

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Roadmap for tonight. What are Bezier curves (mathematically)? Programming Bezier curves (very high level view).

Curve and Surface Basics

Computer Graphics. Unit VI: Curves And Fractals. By Vaishali Kolhe

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry

Further Graphics. Bezier Curves and Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

ECE 600, Dr. Farag, Summer 09

COMP3421. Global Lighting Part 2: Radiosity

Parametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required:

Splines Computer Graphics I Lecture 10

Geometric Modeling of Curves

Dgp _ lecture 2. Curves

MA 323 Geometric Modelling Course Notes: Day 21 Three Dimensional Bezier Curves, Projections and Rational Bezier Curves

and the crooked shall be made straight, and the rough ways shall be made smooth; Luke 3:5

A Curve Tutorial for Introductory Computer Graphics

Curves and Surfaces. Shireen Elhabian and Aly A. Farag University of Louisville

Mathematical Tools in Computer Graphics with C# Implementations Table of Contents

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Pythagorean - Hodograph Curves: Algebra and Geometry Inseparable

The Essentials of CAGD

The Free-form Surface Modelling System

Advanced Graphics. Beziers, B-splines, and NURBS. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

Lecture 9: Introduction to Spline Curves

Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur

B-Spline Polynomials. B-Spline Polynomials. Uniform Cubic B-Spline Curves CS 460. Computer Graphics

For each question, indicate whether the statement is true or false by circling T or F, respectively.

Curves and Curved Surfaces. Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

B-spline Curves. Smoother than other curve forms

Cubic spline interpolation

CSC 305 More Modelling

An introduction to interpolation and splines

Transcription:

CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside

Blending Functions

Blending functions are more convenient basis than monomial basis canonical form (monomial basis) geometric form (blending functions) - geometric form (bottom) is more intuitive because it combines control points with blending functions [ see Shirley Section 15.3]

Interpolating Polynomials

Interpolating polynomials Given n+1 data points, can find a unique interpolating polynomial of degree n Different methods: Vandermonde matrix Lagrange interpolation Newton interpolation

higher order interpolating polynomials are rarely used overshoots non-local effects 4th order (gray) to 5th order (black) These images demonstrate problems with using higher order polynomials: - overshoots - non-local effects (in going from the 4th order polynomial in grey to the 5th order polynomial in black)

Piecewise Polynomial Curves

b1(u) = 1-2u, 0 <= u <=.5 0.5 <= u <= 1 b2(u) = 2u, 0 <= u <=.5 2(1-u),.5 <= u <= 1 b3(u) = 0, 0 <= u <=.5 2u-1,.5 <= u <= 1 Example: blending functions for two line segments

Cubics Allow up to C2 continuity at knots need 4 control points may be 4 points on the curve, combination of points and derivatives,... good smoothness and computational properties need 4 control points: might be 4 points on the curve, combination of points and derivatives,...

We can get any 3 of 4 properties 1.piecewise cubic 2.curve interpolates control points 3.curve has local control 4.curves has C2 continuity at knots

Cubics Natural cubics C2 continuity n points -> n-1 cubic segments control is non-local :( ill-conditioned x(

Cubic Hermite Curves C1 continuity specify both positions and derivatives

Cubic Hermite Curves Specify endpoints and derivatives construct curve with C^1 continuity / /

Hermite blending functions [Wikimedia Commons]

Example: keynote curve tool

Interpolating vs. Approximating Curves Interpolating Approximating (non-interpolating) approximating

Cubic Bezier Curves

Cubic Bezier Curves -The curve interpolates its first (u=0) and last (u = 1) control points - first derivative at the beginning is the vector from first to second point, scaled by degree

Cubic Bezier Curve Examples

Cubic Bezier blending functions

Bezier Curves Degrees 2-6

Bernstein Polynomials The blending functions are a special case of the Bernstein polynomials These polynomials give the blending polynomials for any degree Bezier form All roots at 0 and 1 For any degree they all sum to 1 They are all between 0 and 1 inside (0,1) 22

n = 3 n = 5 n = 4 n = 6 23

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

Bezier Curve Properties curve lies in the convex hull of the data variation diminishing symmetry affine invariant efficient evaluation and subdivision Shirley Section 15.6.1 (p. 368)

for C1 continuity, the vectors must line up and be the same length for G1 continuity, the vectors need only line up Joining Cubic Bezier Curves

Joining Cubic Bezier Curves for C1 continuity, the vectors must line up and be the same length for G1 continuity, the vectors need only line up for C1 continuity, the vectors must line up and be the same length for G1 continuity, the vectors need only line up

Evaluating p(u) geometrically

Evaluating p(u) geometrically

Evaluating p(u) geometrically

Evaluating p(u) geometrically

Evaluating p(u) geometrically

Evaluating p(u) geometrically

Evaluating p(u) geometrically De Casteljau algorithm Kas-tell-joh

de Casteljau algorithm Left: Subdivide the curve at the point u=.5 Right: Subdivide the curve at some other point u Bezier subdivision

Recursive Subdivision for Rendering

Cubic B-Splines

Cubic B-Splines

Spline blending functions

General Splines Defined recursively by Cox-de Boor recursion formula

Spline properties Basis functions convexity

Surfaces

Parametric Surface

Parametric Surface - tangent plane

Bicubic Surface Patch

Bezier Surface Patch Patch lies in convex hull