Need for Parametric Equations

Similar documents
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 1

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

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

Rational Bezier Surface

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

Design considerations

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

A MATRIX FORMULATION OF THE CUBIC BÉZIER CURVE

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

Curve and Surface Basics

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

Bezier Curves, B-Splines, NURBS

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

Central issues in modelling

3D Modeling Parametric Curves & Surfaces

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

Curves and Surfaces Computer Graphics I Lecture 9

(Spline, Bezier, B-Spline)

Sung-Eui Yoon ( 윤성의 )

Intro to Modeling Modeling in 3D

2D Spline Curves. CS 4620 Lecture 13

Rational Bezier Curves

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

2D Spline Curves. CS 4620 Lecture 18

Important Properties of B-spline Basis Functions

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

In this course we will need a set of techniques to represent curves and surfaces in 2-d and 3-d. Some reasons for this include

Geometric Modeling of Curves

Properties of Blending Functions

Intro to Curves Week 1, Lecture 2

Curves. Computer Graphics CSE 167 Lecture 11

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

LECTURE #6. Geometric Modelling for Engineering Applications. Geometric modeling for engineering applications

CAGD PACKAGE FOR MATHEMATICA AND ITS USAGE IN THE TEACHING

An introduction to interpolation and splines

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

8 Project # 2: Bézier 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

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

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

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

OUTLINE. Quadratic Bezier Curves Cubic Bezier Curves

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

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

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

Curves and Surfaces Computer Graphics I Lecture 10

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

Objects 2: Curves & Splines Christian Miller CS Fall 2011

08 - Designing Approximating Curves

Parametric curves. Brian Curless CSE 457 Spring 2016

A New Class of Quasi-Cubic Trigonometric Bezier Curve and Surfaces

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

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017)

Computer Graphics Splines and Curves

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

Information Coding / Computer Graphics, ISY, LiTH. Splines

EECS 487, Fall 2005 Exam 2

An introduction to NURBS

Computational Physics PHYS 420

Intro to Curves Week 4, Lecture 7

B-Splines and NURBS Week 5, Lecture 9

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

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

B-spline Curves. Smoother than other curve forms

Computer Graphics Spline and Surfaces

CS-184: Computer Graphics

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

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

COMP3421. Global Lighting Part 2: Radiosity

CS-184: Computer Graphics. Today

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

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

Computergrafik. Matthias Zwicker. Herbst 2010

15.10 Curve Interpolation using Uniform Cubic B-Spline Curves. CS Dept, UK

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

Handout 4 - Interpolation Examples

CS770/870 Spring 2017 Curve Generation

Computer Graphics Curves and Surfaces. Matthias Teschner

NURBS: Non-Uniform Rational B-Splines AUI Course Denbigh Starkey

Bezier Curves. An Introduction. Detlef Reimers

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

Fathi El-Yafi Project and Software Development Manager Engineering Simulation

Spline Methods Draft. Tom Lyche and Knut Mørken. Department of Informatics Centre of Mathematics for Applications University of Oslo

The Free-form Surface Modelling System

Dgp _ lecture 2. Curves

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

Lecture IV Bézier Curves

Spline Methods Draft. Tom Lyche and Knut Mørken

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

Spline Methods Draft. Tom Lyche and Knut Mørken

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

Research Article Data Visualization Using Rational Trigonometric Spline

Introduction to Computer Graphics

Free-Form Deformation (FFD)

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

Splines. Connecting the Dots

February 23 Math 2335 sec 51 Spring 2016

Advanced Texture-Mapping Curves and Curved Surfaces. Pre-Lecture Business. Texture Modes. Texture Modes. Review quiz

Transcription:

Curves and Surfaces

Curves and Surfaces Need for Parametric Equations Affine Combinations Bernstein Polynomials Bezier Curves and Surfaces Continuity when joining curves B Spline Curves and Surfaces

Need for Parametric Equations Traditionally we ve been using functions of the form y = f(x), good to illustrate mathematical concepts but are restrictive. Restrictive in the sense we can have only one value of y for each value of x. (not good for representing curves) Parametric curves are defined using a parameter t and have defining function for each of the coordinate for a certain point x = f(t) y = g(t) where t is usually restricted to an interval t:[a;b]

Need for Parametric Equations For parametric representations of surfaces, we use two parameters, say u and v, and represent the surface as x = f ( u,v ) y = g ( u,v ) z = h ( u,v ) for some functions f, g, and h, and where u and v are contained in some intervals, u:[a;b], v:[c;d]

Parametric equation for a Line Given two points P 0 = (x 0,y 0 ) and P 1 = (x 1,y 1 ) we can form a straight line by (x,y) = (1-t).(x 0,y o ) + t.(x 1,y 1 ) = ((1-t).x 0 + t.x 1, (1-t).y 0 + t.y 1 ) Where t [0,1] Here, f(t) = (1-t).x 0 + t.x 1 g(t) = (1-t).y 0 + t.y 1 in the definition above. We can also write the above line as P(t) = (1-t)P 0 + t.p 1

Affine Combination In mathematics, a linear combination of vectors x 1,..., x n is called an affine combination of x 1,..., x n when the sum of the coefficients is 1, that is, In case of our line defined on the previous page, P(t) = (1-t) P 0 + tp 1 is an affine combination with a 1 = (1-t) and a 2 = t, and a 1 + a 2 yields in 1.

P = a 0 P 0 + a 1 P 1 + + a n P n If each a i is such that 0 <= a i <= 1, then each generated point P is called a convex combination of the points P 0,P 1,, P n Given any set of points, we say that the set is convex, if given any two points of the set, any convex combination of these two points is also in the set. Convex Combinations Given a set of points P 0,P 1, P n, we can form affine combinations of those points by selecting a 0,a 1,.a n with a 0 + a 1 +.. + a n = 1 and form new points

Convex Hull The set of all points P that can be written as convex combinations of P 0,P 1,.., P n is called the convex hull of the points P 0,P 1,.., P n. The convex hull is the smallest convex set that contains all the set of points P 0, P 1,.., P n

Bernstein Polynomials The Bernstein Polynomial of degree n are defined by for i=0,1,..n, where There are n+1 nth-degree Bernstein polynomials. And if i<0 or i>n B i,n =0 Bernstein Polynomials of degree 1 Bernstein Polynomials of degree 2 B 0,1 = 1-t B 1,1 = t B 0,2 = (1-t) 2 B 1,2 = 2t(1-t) B 2,2 = t 2

Bezier Curve To define a Bezier Curve of degree n we need a set of n+1 (P 0,P 1,..,P n ) control points. The points P 0 and P n are the extremities of the curve, none of the other points fall on the curve, but they act as points of attraction for the curve. The degree of the Bezier curve is equal to the number of control points of the curve.

Bezier Curve Quadratic Bezier Curve Degree of polynomials = 2 Order (k) = 3 Number of Control points = k = 3 Cubic Bezier Curve Degree of polynomials = 2 Order (k) = 4 Number of Control points = k = 4

Bezier Curve Definitions for the Quadratic Bezier Curve The Analytical Formula The Geometric Construction Formula

Bezier Curve Definitions for the Cubic Bezier Curve The Analytical Formula The Geometric Construction Formula

Bezier Curves A few traits Has global propogation i.e. All the control points are responsible for the curve, changing even one points affects the whole curve The degree of polynomials defining the curve increases as the number of control points increase.

Bezier Surfaces The extension of Bezier curves to surfaces is called the Bezier surface. The surface is constructed from and (n+1)x(m+1) array of control points { P i,j : 0 <=i<= n, 0<=j<=m }. The following shows a set of control points for m=n=3. There are no restrictions on the location of the control points.

Bezier Surfaces The surface generated by the control points is defined using two variables u and v. If we set v equal to 0, we obtain the definition for a Bezier Curve.

Bezier Surfaces We observe that for extreme values of u and V, w get Bezier curves for the surface, Hence we can conclude that all the edge curves of the Bezier surface are Bezier Curves. For all P(u,0), P(u,1), P(0,V), P(1,V)

Transitioning to B-Spline Curves Changing the parameterization of the Bezier curve We ve seen that the parameter t that we used for defining Bezier curves was constrained between 0 and 1. i.e. 0 <= t <= 1 But we may need to define the Bezier curve between an arbitrary interval of a and b so that a <= t <= b, for this we need to change our Bernstein polynomials. This can easily be done by using following definition

Transitioning to B-Spline Curves Thus we can define a function τ(t) where τ(t) = t-a / b-a and redefine the equation for our curve as. We ve parameterized the equation of the curve to work over the interval [a,b]

Continuity of Curves Consider the two curves in the example below defined by their own set of control points P(t) : {P 0,P 1,P 2,P 3 } and Q(t):{Q 0,Q 1,Q 2,Q 3 }. Consider t for P(t) lies in the interval [a,b] and t for Q(t) lies in the interval [b,c]. If we were to patch these curves together we ll need to define another curve R(t) operating over the interval [a,c]

B-Spline Curves For a B-Spline curve we re given a set of n+1 control points {P 0,P 1,..,P n }, the desired order of the curve k (This is new!!). And a set of n+k+1 knots {t 0,t 1,...t n+k } We ll be looking at NURBS, as they are the more popular B-Splines *Non Uniform Rational B-Splines

B-Spline Curves Following is how a B-Spline curve is defined geometrically where and

B-Spline Curves Following is how a B-Spline curve is defined analytically

What s a NURBS? A B-Spline curve is called as a NURB if the contribution/influence of a control point to the segments of the curve vary. But NURBS are the B-Splines that fit the Bezier curve definition.

B-Spline Surface The extension of B-Spline curve to surfaces is called a B-Spline patch. The patch is constructed from an (n+1)x(m+1) array of control points {P i,j : 0<=i<=n, 0<=j<=m}, an order k and two set of knots {u 0,u 1,.., u n+k } and {v 0,v 1,.., v m+k }

B-Spline Surfaces Similar to the Bezier Surface but we change the equations to generate B-Spline curves instead of Bezier curves when fixing either of the u or v parameters. Defined by the following equation Properties of the B-spline patch are similar to the Bezier patch. All edge curves of the patch are B-spline curves.