Fundamentals of Computer Graphics. Lecture 3 Parametric curve and surface. Yong-Jin Liu.

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Fundamentals of Computer Graphics. Lecture 3 Parametric curve and surface. Yong-Jin Liu."

Transcription

1 Fundamentals of Computer Graphics Lecture 3 Parametric curve and surface Yong-Jin Liu

2 Smooth curve and surface

3 Design criteria of smooth curve and surface Smooth and continuity Ability to control the local shape Stability Is it easy to draw

4 Smooth and continuity Regard the curve as the orbit of point changing with its parameter u C( u) y( u) zu ( ) 2 n x( u) a0 a1u a2u anu Regard the differential of one point as the its speed along the orbit, the direction of speed is the tangent direction of this point x( u) a1 2a2u nanu C( u) y( u) z ( u) n1

5

6 C n metric of curve smooth Differentiability of function:if parametric curve has continuous derivative until n order at any point in the interval [a, b],i.e. n order continuous differentiable, then the curve is n order parametric continuous in the interval [a, b]. Polynomial curve has infinite order parametric continuous C Polynomial curve of n order p n (x)=a 0 +a 1 x+a 2 x 2 +a n x n

7 Consider two curves with a common point Differentiability of function:if parametric curve has continuous derivative until n order at any point in the interval [a, b],i.e. n order continuous differentiable, then the curve is n order parametric continuous in the interval [a, b]. C 0 continuous C 1 continuous

8 C n curve continuity Differentiability of function:if combined parametric curve has continuous derivative until n order at the joint point, it is called C n or n-order parametric continuous. Is there any thing wrong? The same curve can have different parameters. circle: 1 t xt () x( u) cos( u) or 1 t y( u) sin( u) 2t yt () 1 t 2 2 2

9 Different parameters will get different derivative vector! (0,2) ) (1 ) 2(1, ) (1 4 )) ( ), ( ( (0,1) )) ),cos( sin( ( )) ( ), ( ( t t t t t y t x u u u y u x

10 C(u), u [a, b] C(t), t [0, 1], t u b a a dc( u) dc( t) dt 1 dc( t) 1 C( u) C( t) du dt du b a dt b a

11 Two continuity definitions Differentiability of function:if combined parametric curve has continuous derivative until n order at the joint,i.e. n order continuous differentiable, such smooth is called C n or n order parametric continuous. Geometry continuity:if the direction of derivative vector of combined curve at the joint is equal, then it is n order geometry continuous, denoted by G n.

12 If require G 0 or C 0 continuous at the joint, that is to say two curves are continuous at the joint. If require G 1 continuous at the joint,that is to say two curves are G 0 continuous at the joint, and have the common derivative vector P (1)=aQ (0). when a=1,g 1 continuous is also C 1 continuous If require G 2 continuous at the joint,that is to say two curves are G 1 continuous at the joint, and have common curvature vector.

13 Curvature formula P(1) P (1) Q(0) Q (0) 3 3 P(1) Q(0) This equation can be wrote as : Q a P bp 2 (0) (1) (1) a, b is arbitrary constant. When a=1,b=0,g 2 continuous is also C 2 continuous. P(0) P(t) P(1) Q(0) Q(t) Q(1) Figure continuous of two curves

14 Arc length parameterization of curve The same curve can have different parameter If u(s) is a monotonic function,then C(s)=C(u(s)) is a new parameterization about s of the curve Compute the length L(u) of curve C(u) If there exists parameter s, so that L(s)=s, s 0? s = 0 Length L(s) Parameter s Curve C(s)

15 Arc length parameterization of curve ds Let C( u) du u s C( u) du L( u) 0 u s L s 1 ( ) ( ) dc( s) dc( u( s)) du 1 v( s) C( u) ds du ds C ( u ) vs ( ) 1

16

17 Design criteria of smooth curve and surface Smooth and continuity Ability to control the local shape Stability Is it easy to draw

18 Power based representation of polynomial curve n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n C( u) ( x( u), y( u), z( u)) a u a ( x, y, z ) i i i i C( u) n i0 a a a a u u u i n i i n i T

19 See from the aspect of human computer interaction n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n 1 order polynomial curve: a 1 +a 0 a 1 u+a 0 a 0

20 n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n 2 order polynomial curve: a 2 u 2 +a 1 u+a 0 a 1 a 0 a 2 +a 1 +a 0 2a 2 +a 1 Parabola, ellipse, hyperbola?

21 n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n 3 order polynomial curve: a 3 u 3 +a 2 u 2 +a 1 u+a 0

22 Power based representation of polynomial curve n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n The representation and control ability is very bad Bernstein based representation of polynomial curve Beizer curve Bernstien polynomial n C( u) pibi, n( u) i0 n! i Bin, ( u) u (1 u) i!( n i)! ni

23 f ( u) a a u a u u 2 a 2 p 2 B 2,2 a 0 a 1 u p 0 p 1 1 B 0,2 B 1,2 f ( u) C( u) p B p B p B 0 0,2 1 1,2 2 2,2

24 Bernstein based representation of polynomial curve have clear geometry meaning n C( u) p B ( u) B ( u) p i i, n i, n i i0 i0 n

25 Bernstein based representation of polynomial curve Have clear geometry meaning n C( u) p B ( u) B ( u) p, u [0,1] i i, n i, n i i0 i0 Interpolation of endpoints n n C(0) p B (0) p i0 n i0 i i, n 0 C(1) p B (1) p i i, n n n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)!

26 Bernstein based representation of polynomial curve Have clear geometry meaning Why there exists control polygon effect when use Bernstein based representation?

27 1 order Bezier curve n C( u) B ( u) p B ( u) p B ( u) p i0 i, n i 0,1 0 1,1 1 n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)! u=0 u=1

28 2 order Bezier curve n C( u) B ( u) p B ( u) p B ( u) p B ( u) p i0 i, n i 0,2 0 1,2 1 2,2 2 n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)! u=0 u=1

29 3 order Bezier curve n C( u) B ( u) p B ( u) p B ( u) p B ( u) p B ( u) p i0 i, n i 0,3 0 1,3 1 2,3 2 3,3 3 n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)! u=0 u=1

30 9 order Bezier curve 9 C( u) B ( u) p i0 i, n i n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)! u=0 u=1 u=0.5

31 Properties of Bezier curve and Bernstein base 1. B i,n (u) 0, for all i, n and 0 u 1 2. Partition of unity n i=0b i,n (u) = 1, 0 u 1 3. B 0,n (0) = B n,n (1) = 1 4. B i,n (u) has and only has a maximum value in the interval [0,1], it is at u=i/n 5. Base set {B i,n (u)} is symmetry about u=1/2 n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)!

32 Computation method of Bezier curve Method 1: 9 C( u) B ( u) p i0 i, n n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)! Method 2:geometry drawing i

33 Computation method of Bezier curve Method 2 (geometry drawing, ruler drawing): example 2 order Bezier curve 2 C( u) B ( u) P i0 i,2 i (1 u) P 2 u(1 u) P u P (1 u)((1 u) P up ) u((1 u) P up )

34

35

36 2 order Bezier curve 2 C( u) B ( u) P i0 i,2 i (1 u) P 2 u(1 u) P u P (1 u)((1 u) P up ) u((1 u) P up ) Is this property general?

37 Properties of Bezier curve and Bernstein base 6. recursive definition: B i,n (u) = (1u)B i,n1 (u) +ub i1,n1 (u) with B i,n (u) 0, if i < 0 or i > n 7. derivative: B i,n (u) = db i,n (u) /du = n(b i1,n1 (u) B i,n1 (u) ) with B 1,n1 (u) B n,n1 (u) 0 n! i ni Bin, ( u) u (1 u), u [0, 1] i!( n i)!

38 Denote n order Bezier curve as C n (P 0,,P n ), then we have C n (P 0,,P n )=(1u)C n1 (P 0,,P n-1 )+uc n1 (P 1,,P n )

39

40

41 Geometry drawing algorithm n order Bezier curve has C n (P 0,,P n )=(1u)C n1 (P 0,,P n-1 )+uc n1 (P 1,,P n ) denote P i as P 0,i P k,i (u)=(1u)p k1,i (u)+up k1,i+1 (u) k = 1,,n i = 0,,nk decasteljau algorithm

42 Smooth curve and surface in 3D space

43 1D to 2D Regard the curve as the orbit of point changing with its parameter u C( u) y( u) zu ( ) 2 n x( u) a0 a1u a2u anu

44 Tensor product surface Tensor product surfaces S( u, v) ( x( u, v), y( u, v), z( u, v)) n m i0 j0 f ( u) g ( v) b i j i, j [ f ( u)] [ b ][ g ( v)] T i i, j j Base function Geometry coefficient Point S(u 0, v 0 ) Isoparametric lines C(u) = S(u, v 0 ) and C(v) = S(u 0, v)

45

46 Tensor product Bezier surface n m S( u, v) B ( u) B ( v) Point S(u 0, v 0 ) i0 j0 i, n j, m i, j Isoparametric lines C(u) = S(u, v 0 ) and C(v) = S(u 0, v) P

47

48

49 n m S( u, v) B ( u) B ( v) i0 j0 2D Bernstein base P i, n j, m i, j

50 Computation method of Bezier curve Geometry drawing algorithm decasteljau algorithm

51 Computation method of Bezier curve decasteljau algorithm n S( u, v) B ( u) B ( v) P i0 j0 i0 m i, n i, n j, m i, j n m Bi, n ( u) Bj, m( v) Pi, j i0 j0 n B ( u) Q i v u

52

53 Design criteria of smooth curve and surface Smooth and continuity Ability to control the local shape Stability Is it easy to draw Is Bezier curve perfect?

54

55 Beizer curve The representation and control ability of local shape is bad if interpolate many (n+1) discrete point s, then require a high order (n) Bezier curve. How to improve? Splicing many Bezier curve segments n order polynomial curve C n (u)=a 0 +a 1 u+a 2 u 2 ++a n u n

56 Design of B-spline curve Determine the order of continuity p Determine node vector U = {u 0, u 1,, u m }; Determine a set of control points {P 0, P 1,, P n }; The form of B-spline curve is n C( u) Ni, p( u) i0 P i

57 B-spline surface Tensor product surface n m S( u, v) N ( u) N ( v) p1 q1 i0 j0 P i, p j, q i, j r1 U {0,,0, u,, u,1,,1} p1 r p1 s1 q1 sq1 p1 V {0,,0, u,, u,1,,1} q1 r n p 1 and s m q 1

58

59 Ability of local shape change

60 Ability of local shape change

61 The reason is the local scope of basic function P n m S( u, v) N ( u) N ( v) i0 j0 P i, p j, q i, j N ( u) N ( v) [ u, u ) [ v, v ) i, j i, p j, q i i p1 j jq1

62

63 Some extensions of NURBS curve and surface Free form deformation (FFD) Subdivision surface

64 Free deformation of parametric curve and surface (FFD) 1D curve n C( u) Ni, p( u) p1 i0 m1 U {0,,0, u,, u,1,,1} P p1 m p1 i p1 2D surface 3D solid

65 Free deformation of parametric curve and surface (FFD) 1D curve 2D surface n m S( u, v) N ( u) N ( v) p1 q1 3D solid i0 j0 P i, p j, q i, j r1 U {0,,0, u,, u,1,,1} p1 r p1 s1 q1 sq1 p1 V {0,,0, u,, u,1,,1} q1

66 Free deformation of parametric curve and surface (FFD) 1D curve 2D surface 3D solid n m l S( u, v, w) N ( u) N ( v) N ( v) P i0 j0 k0 i, p j, q k, r i, j, k o1 U {0,,0, u,, u,1,,1} p1 r p1 p1 p1 s1 V {0,,0, u,, u,1,,1} q1 sq1 q1 q1 t1 W {0,,0, u,, u,1,,1} r1 tr1 r1 r1

67

68

69

70 Free deformation of parametric curve and surface (FFD) 1D curve 2D surface 3D solid Further expansion?

71

72 Free deformation of parametric curve and surface (FFD) 1D curve 2D surface 3D solid Further expansion?

73 Extended Free Form Deformation

74

75

76

77

78 Selective Course Project 6 Try to program the following shape using GDI+:

79 Tips: The following code constructs a complicated region using two spline curves using namespace Gdiplus; Graphics graphics( pdc->m_hdc ); Pen pen(color::blue, 3); Point point1( 50, 200); Point point2(100, 150); Point point3(160, 180); Point point4(200, 200); Point point5(230, 150); Point point6(220, 50); Point point7(190, 70); Point point8(130, 220); Point curvepoints[8] = {point1, point2, point3, point4, point5, point6, point7, point8}; Point* pcurvepoints = curvepoints; GraphicsPath path; path.addclosedcurve(curvepoints, 8, 0.5); PathGradientBrush pthgrbrush(&path); pthgrbrush.setcentercolor(color(255, 0, 0, 255)); Color colors[] = {Color(0, 0, 0, 255)}; INT count = 1; pthgrbrush.setsurroundcolors(colors, &count); graphics.drawclosedcurve(&pen, curvepoints, 8, 0.5); graphics.fillpath(&pthgrbrush, &path);

Curve and Surface Basics

Curve and Surface Basics Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric

More information

3D Modeling Parametric Curves & Surfaces

3D Modeling Parametric Curves & Surfaces 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2012 3D Object Representations Raw data Point cloud Range image Polygon soup Solids Voxels BSP tree CSG Sweep Surfaces Mesh Subdivision

More information

CS-184: Computer Graphics. Today

CS-184: Computer Graphics. Today CS-84: Computer Graphics Lecture #5: Curves and Surfaces Prof. James O Brien University of California, Berkeley V25F-5-. Today General curve and surface representations Splines and other polynomial bases

More information

Parametric curves. Brian Curless CSE 457 Spring 2016

Parametric curves. Brian Curless CSE 457 Spring 2016 Parametric curves Brian Curless CSE 457 Spring 2016 1 Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics

More information

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

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li. Fall 2014 CSCI 420: Computer Graphics 4.2 Splines Hao Li http://cs420.hao-li.com 1 Roller coaster Next programming assignment involves creating a 3D roller coaster animation We must model the 3D curve

More information

CS-184: Computer Graphics

CS-184: Computer Graphics CS-184: Computer Graphics Lecture #12: Curves and Surfaces Prof. James O Brien University of California, Berkeley V2007-F-12-1.0 Today General curve and surface representations Splines and other polynomial

More information

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

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels

More information

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

CS130 : Computer Graphics Curves. Tamar Shinar Computer Science & Engineering UC Riverside CS130 : Computer Graphics Curves Tamar Shinar Computer Science & Engineering UC Riverside Design considerations local control of shape design each segment independently smoothness and continuity ability

More information

Design considerations

Design considerations Curves Design considerations local control of shape design each segment independently smoothness and continuity ability to evaluate derivatives stability small change in input leads to small change in

More information

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

Splines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes CSCI 420 Computer Graphics Lecture 8 Splines Jernej Barbic University of Southern California Hermite Splines Bezier Splines Catmull-Rom Splines Other Cubic Splines [Angel Ch 12.4-12.12] Roller coaster

More information

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.

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. Bézier Splines CS 475 / CS 675 Computer Graphics Lecture 14 : Modelling Curves 3 n P t = B i J n,i t with 0 t 1 J n, i t = i=0 n i t i 1 t n i No local control. Degree restricted by the control polygon.

More information

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

CS 475 / CS Computer Graphics. Modelling Curves 3 - B-Splines CS 475 / CS 675 - Computer Graphics Modelling Curves 3 - Bézier Splines n P t = i=0 No local control. B i J n,i t with 0 t 1 J n,i t = n i t i 1 t n i Degree restricted by the control polygon. http://www.cs.mtu.edu/~shene/courses/cs3621/notes/spline/bezier/bezier-move-ct-pt.html

More information

Computer Graphics Curves and Surfaces. Matthias Teschner

Computer Graphics Curves and Surfaces. Matthias Teschner Computer Graphics Curves and Surfaces Matthias Teschner Outline Introduction Polynomial curves Bézier curves Matrix notation Curve subdivision Differential curve properties Piecewise polynomial curves

More information

2D Spline Curves. CS 4620 Lecture 18

2D Spline Curves. CS 4620 Lecture 18 2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,

More information

Lecture IV Bézier Curves

Lecture IV Bézier Curves Lecture IV Bézier Curves Why Curves? Why Curves? Why Curves? Why Curves? Why Curves? Linear (flat) Curved Easier More pieces Looks ugly Complicated Fewer pieces Looks smooth What is a curve? Intuitively:

More information

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

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c

More information

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

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c

More information

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

Know it. Control points. B Spline surfaces. Implicit surfaces Know it 15 B Spline Cur 14 13 12 11 Parametric curves Catmull clark subdivision Parametric surfaces Interpolating curves 10 9 8 7 6 5 4 3 2 Control points B Spline surfaces Implicit surfaces Bezier surfaces

More information

2D Spline Curves. CS 4620 Lecture 13

2D Spline Curves. CS 4620 Lecture 13 2D Spline Curves CS 4620 Lecture 13 2008 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes [Boeing] that is, without discontinuities So far we can make things with corners

More information

Curves. Computer Graphics CSE 167 Lecture 11

Curves. Computer Graphics CSE 167 Lecture 11 Curves Computer Graphics CSE 167 Lecture 11 CSE 167: Computer graphics Polynomial Curves Polynomial functions Bézier Curves Drawing Bézier curves Piecewise Bézier curves Based on slides courtesy of Jurgen

More information

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

Parametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required: Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Parametric curves CSE 457 Winter 2014 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics and Geometric

More information

Bezier Curves, B-Splines, NURBS

Bezier Curves, B-Splines, NURBS Bezier Curves, B-Splines, NURBS Example Application: Font Design and Display Curved objects are everywhere There is always need for: mathematical fidelity high precision artistic freedom and flexibility

More information

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

CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements Project 3 due tomorrow Midterm 2 next

More information

Curves and Surfaces 1

Curves and Surfaces 1 Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and

More information

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg COMPUTER AIDED GEOMETRIC DESIGN Thomas W. Sederberg January 31, 2011 ii T. W. Sederberg iii Preface This semester is the 24 th time I have taught a course at Brigham Young University titled, Computer Aided

More information

08 - Designing Approximating Curves

08 - Designing Approximating Curves 08 - Designing Approximating Curves Acknowledgement: Olga Sorkine-Hornung, Alexander Sorkine-Hornung, Ilya Baran Last time Interpolating curves Monomials Lagrange Hermite Different control types Polynomials

More information

Shape Modeling. Differential Geometry Primer Smooth Definitions Discrete Theory in a Nutshell. CS 523: Computer Graphics, Spring 2011

Shape Modeling. Differential Geometry Primer Smooth Definitions Discrete Theory in a Nutshell. CS 523: Computer Graphics, Spring 2011 CS 523: Computer Graphics, Spring 2011 Shape Modeling Differential Geometry Primer Smooth Definitions Discrete Theory in a Nutshell 2/15/2011 1 Motivation Geometry processing: understand geometric characteristics,

More information

Isoparametric Curve of Quadratic F-Bézier Curve

Isoparametric Curve of Quadratic F-Bézier Curve J. of the Chosun Natural Science Vol. 6, No. 1 (2013) pp. 46 52 Isoparametric Curve of Quadratic F-Bézier Curve Hae Yeon Park 1 and Young Joon Ahn 2, Abstract In this thesis, we consider isoparametric

More information

CGT 581 G Geometric Modeling Curves

CGT 581 G Geometric Modeling Curves CGT 581 G Geometric Modeling Curves Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Technology Curves What is a curve? Mathematical definition 1) The continuous image of an interval

More information

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

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail Computer Graphics CS 54 Lecture 1a Curves, Tesselation/Geometry Shaders & Level of Detail Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines

More information

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016 Computergrafik Matthias Zwicker Universität Bern Herbst 2016 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling 2 Piecewise Bézier curves Each

More information

Intro to Curves Week 4, Lecture 7

Intro to Curves Week 4, Lecture 7 CS 430/536 Computer Graphics I Intro to Curves Week 4, Lecture 7 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University

More information

Rational Bezier Curves

Rational Bezier Curves Rational Bezier Curves Use of homogeneous coordinates Rational spline curve: define a curve in one higher dimension space, project it down on the homogenizing variable Mathematical formulation: n P(u)

More information

Intro to Curves Week 1, Lecture 2

Intro to Curves Week 1, Lecture 2 CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University Outline Math review Introduction to 2D curves

More information

Central issues in modelling

Central issues in modelling Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to

More information

Computergrafik. Matthias Zwicker. Herbst 2010

Computergrafik. Matthias Zwicker. Herbst 2010 Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling Piecewise Bézier curves Each segment

More information

Space deformation Free-form deformation Deformation control Examples: twisting, bending, tapering

Space deformation Free-form deformation Deformation control Examples: twisting, bending, tapering Deformation Beyond rigid body motion (e.g. translation, rotation) Extremely valuable for both modeling and rendering Applications { animation, design, visualization { engineering, medicine { education,

More information

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

A New Class of Quasi-Cubic Trigonometric Bezier Curve and Surfaces A New Class of Quasi-Cubic Trigonometric Bezier Curve and Surfaces Mridula Dube 1, Urvashi Mishra 2 1 Department of Mathematics and Computer Science, R.D. University, Jabalpur, Madhya Pradesh, India 2

More information

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

CSE 167: Introduction to Computer Graphics Lecture #13: Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 CSE 167: Introduction to Computer Graphics Lecture #13: Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 4 due Monday Nov 27 at 2pm Next Tuesday:

More information

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

CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 Outline Math review Introduction to 2D curves

More information

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques 436-105 Engineering Communications GL9:1 GL9: CAD techniques Curves Surfaces Solids Techniques Parametric curves GL9:2 x = a 1 + b 1 u + c 1 u 2 + d 1 u 3 + y = a 2 + b 2 u + c 2 u 2 + d 2 u 3 + z = a

More information

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

Remark. Jacobs University Visualization and Computer Graphics Lab : ESM4A - Numerical Methods 331 Remark Reconsidering the motivating example, we observe that the derivatives are typically not given by the problem specification. However, they can be estimated in a pre-processing step. A good estimate

More information

Information Coding / Computer Graphics, ISY, LiTH. Splines

Information Coding / Computer Graphics, ISY, LiTH. Splines 28(69) Splines Originally a drafting tool to create a smooth curve In computer graphics: a curve built from sections, each described by a 2nd or 3rd degree polynomial. Very common in non-real-time graphics,

More information

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

LECTURE #6. Geometric Modelling for Engineering Applications. Geometric modeling for engineering applications LECTURE #6 Geometric modeling for engineering applications Geometric Modelling for Engineering Applications Introduction to modeling Geometric modeling Curve representation Hermite curve Bezier curve B-spline

More information

An introduction to interpolation and splines

An introduction to interpolation and splines An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve

More information

Dgp _ lecture 2. Curves

Dgp _ lecture 2. Curves Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves

More information

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

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017) Homework Assignment Sheet I (Due 20-Oct-2017) Assignment 1 Let n N and A be a finite set of cardinality n = A. By definition, a permutation of A is a bijective function from A to A. Prove that there exist

More information

B-spline Curves. Smoother than other curve forms

B-spline Curves. Smoother than other curve forms Curves and Surfaces B-spline Curves These curves are approximating rather than interpolating curves. The curves come close to, but may not actually pass through, the control points. Usually used as multiple,

More information

COMP3421. Global Lighting Part 2: Radiosity

COMP3421. Global Lighting Part 2: Radiosity COMP3421 Global Lighting Part 2: Radiosity Recap: Global Lighting The lighting equation we looked at earlier only handled direct lighting from sources: We added an ambient fudge term to account for all

More information

Fathi El-Yafi Project and Software Development Manager Engineering Simulation

Fathi El-Yafi Project and Software Development Manager Engineering Simulation An Introduction to Geometry Design Algorithms Fathi El-Yafi Project and Software Development Manager Engineering Simulation 1 Geometry: Overview Geometry Basics Definitions Data Semantic Topology Mathematics

More information

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

Representing Curves Part II. Foley & Van Dam, Chapter 11 Representing Curves Part II Foley & Van Dam, Chapter 11 Representing Curves Polynomial Splines Bezier Curves Cardinal Splines Uniform, non rational B-Splines Drawing Curves Applications of Bezier splines

More information

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

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple Curves and surfaces Escaping Flatland Until now we have worked with flat entities such as lines and flat polygons Fit well with graphics hardware Mathematically simple But the world is not composed of

More information

Spline Surfaces, Subdivision Surfaces

Spline Surfaces, Subdivision Surfaces CS-C3100 Computer Graphics Spline Surfaces, Subdivision Surfaces vectorportal.com Trivia Assignment 1 due this Sunday! Feedback on the starter code, difficulty, etc., much appreciated Put in your README

More information

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

CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside 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

More information

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

Curves D.A. Forsyth, with slides from John Hart Curves D.A. Forsyth, with slides from John Hart Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction

More information

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

Curves and Curved Surfaces. Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006 Curves and Curved Surfaces Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006 Outline for today Summary of Bézier curves Piecewise-cubic curves, B-splines Surface

More information

COMPUTER AIDED ENGINEERING DESIGN (BFF2612)

COMPUTER AIDED ENGINEERING DESIGN (BFF2612) COMPUTER AIDED ENGINEERING DESIGN (BFF2612) BASIC MATHEMATICAL CONCEPTS IN CAED by Dr. Mohd Nizar Mhd Razali Faculty of Manufacturing Engineering mnizar@ump.edu.my COORDINATE SYSTEM y+ y+ z+ z+ x+ RIGHT

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics 2016 Spring National Cheng Kung University Instructors: Min-Chun Hu 胡敏君 Shih-Chin Weng 翁士欽 ( 西基電腦動畫 ) Data Representation Curves and Surfaces Limitations of Polygons Inherently

More information

Curves and Surfaces Computer Graphics I Lecture 9

Curves and Surfaces Computer Graphics I Lecture 9 15-462 Computer Graphics I Lecture 9 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] February 19, 2002 Frank Pfenning Carnegie

More information

Geometric Modeling of Curves

Geometric Modeling of Curves Curves Locus of a point moving with one degree of freedom Locus of a one-dimensional parameter family of point Mathematically defined using: Explicit equations Implicit equations Parametric equations (Hermite,

More information

Bezier Curves. An Introduction. Detlef Reimers

Bezier Curves. An Introduction. Detlef Reimers Bezier Curves An Introduction Detlef Reimers detlefreimers@gmx.de http://detlefreimers.de September 1, 2011 Chapter 1 Bezier Curve Basics 1.1 Linear Interpolation This section will give you a basic introduction

More information

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

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry Representation Ab initio design Rendering Solid modelers Kinematic

More information

Review 1. Richard Koch. April 23, 2005

Review 1. Richard Koch. April 23, 2005 Review Richard Koch April 3, 5 Curves From the chapter on curves, you should know. the formula for arc length in section.;. the definition of T (s), κ(s), N(s), B(s) in section.4. 3. the fact that κ =

More information

Parameterization of triangular meshes

Parameterization of triangular meshes Parameterization of triangular meshes Michael S. Floater November 10, 2009 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to

More information

Topic 5.1: Line Elements and Scalar Line Integrals. Textbook: Section 16.2

Topic 5.1: Line Elements and Scalar Line Integrals. Textbook: Section 16.2 Topic 5.1: Line Elements and Scalar Line Integrals Textbook: Section 16.2 Warm-Up: Derivatives of Vector Functions Suppose r(t) = x(t) î + y(t) ĵ + z(t) ˆk parameterizes a curve C. The vector: is: r (t)

More information

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t)

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t) Advanced Modeling 2 Katja Bühler, Andrej Varchola, Eduard Gröller March 24, 2014 1 Parametric Representations A parametric curve in E 3 is given by x(t) c : c(t) = y(t) ; t I = [a, b] R z(t) where x(t),

More information

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

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 9: Introduction to Spline Curves Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 13: Slide 2 Splines The word spline comes from the ship building trade

More information

Computer Graphics Spline and Surfaces

Computer Graphics Spline and Surfaces Computer Graphics 2016 10. Spline and Surfaces Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2016-12-05 Outline! Introduction! Bézier curve and surface! NURBS curve and surface! subdivision

More information

An Introduction to Bezier Curves, B-Splines, and Tensor Product Surfaces with History and Applications

An Introduction to Bezier Curves, B-Splines, and Tensor Product Surfaces with History and Applications An Introduction to Bezier Curves, B-Splines, and Tensor Product Surfaces with History and Applications Benjamin T. Bertka University of California Santa Cruz May 30 th, 2008 1 History Before computer graphics

More information

Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1

Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1 Spline Curves Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1 Problem: In the previous chapter, we have seen that interpolating polynomials, especially those of high degree, tend to produce strong

More information

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Name: Date: 1. Match the equation with its graph. Page 1

Name: Date: 1. Match the equation with its graph. Page 1 Name: Date: 1. Match the equation with its graph. y 6x A) C) Page 1 D) E) Page . Match the equation with its graph. ( x3) ( y3) A) C) Page 3 D) E) Page 4 3. Match the equation with its graph. ( x ) y 1

More information

Parameterization. Michael S. Floater. November 10, 2011

Parameterization. Michael S. Floater. November 10, 2011 Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point

More information

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

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Need for Parametric Equations

Need for Parametric Equations 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

More information

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

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November Surfaces for CAGD FSP Tutorial FSP-Seminar, Graz, November 2005 1 Tensor Product Surfaces Given: two curve schemes (Bézier curves or B splines): I: x(u) = m i=0 F i(u)b i, u [a, b], II: x(v) = n j=0 G

More information

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

Advanced Graphics. Beziers, B-splines, and NURBS. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd Advanced Graphics Beziers, B-splines, and NURBS Alex Benton, University of Cambridge A.Benton@damtp.cam.ac.uk Supported in part by Google UK, Ltd Bezier splines, B-Splines, and NURBS Expensive products

More information

CS3621 Midterm Solution (Fall 2005) 150 points

CS3621 Midterm Solution (Fall 2005) 150 points CS362 Midterm Solution Fall 25. Geometric Transformation CS362 Midterm Solution (Fall 25) 5 points (a) [5 points] Find the 2D transformation matrix for the reflection about the y-axis transformation (i.e.,

More information

13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY

13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY 13.472J/1.128J/2.158J/16.94J COMPUTATIONAL GEOMETRY Lectures 4 and 5 N. M. Patrikalakis Massachusetts Institute of Technology Cambridge, MA 2139-437, USA Copyright c 23 Massachusetts Institute of Technology

More information

Curves and Surfaces Computer Graphics I Lecture 10

Curves and Surfaces Computer Graphics I Lecture 10 15-462 Computer Graphics I Lecture 10 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] September 30, 2003 Doug James Carnegie

More information

American International Journal of Research in Science, Technology, Engineering & Mathematics

American International Journal of Research in Science, Technology, Engineering & Mathematics American International Journal of Research in Science, Technology, Engineering & Mathematics Available online at http://www.iasir.net ISSN (Print): 38-349, ISSN (Online): 38-3580, ISSN (CD-ROM): 38-369

More information

2Surfaces. Design with Bézier Surfaces

2Surfaces. Design with Bézier Surfaces You don t see something until you have the right metaphor to let you perceive it. James Gleick Surfaces Design with Bézier Surfaces S : r(u, v) = Bézier surfaces represent an elegant way to build a surface,

More information

Computer Graphics Splines and Curves

Computer Graphics Splines and Curves Computer Graphics 2015 9. Splines and Curves Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2015-11-23 About homework 3 - an alternative solution with WebGL - links: - WebGL lessons http://learningwebgl.com/blog/?page_id=1217

More information

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural Polygon Tables We specify a polygon surface with a set of vertex coordinates and associated attribute

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

Approximation of 3D-Parametric Functions by Bicubic B-spline Functions

Approximation of 3D-Parametric Functions by Bicubic B-spline Functions International Journal of Mathematical Modelling & Computations Vol. 02, No. 03, 2012, 211-220 Approximation of 3D-Parametric Functions by Bicubic B-spline Functions M. Amirfakhrian a, a Department of Mathematics,

More information

The Essentials of CAGD

The Essentials of CAGD The Essentials of CAGD Chapter 6: Bézier Patches Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd c 2 Farin & Hansford The

More information

Shape Control of Cubic H-Bézier Curve by Moving Control Point

Shape Control of Cubic H-Bézier Curve by Moving Control Point Journal of Information & Computational Science 4: 2 (2007) 871 878 Available at http://www.joics.com Shape Control of Cubic H-Bézier Curve by Moving Control Point Hongyan Zhao a,b, Guojin Wang a,b, a Department

More information

OpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives.

OpenGL Graphics System. 2D Graphics Primitives. Drawing 2D Graphics Primitives. 2D Graphics Primitives. Mathematical 2D Primitives. D Graphics Primitives Eye sees Displays - CRT/LCD Frame buffer - Addressable pixel array (D) Graphics processor s main function is to map application model (D) by projection on to D primitives: points,

More information

Properties of Blending Functions

Properties of Blending Functions Chapter 5 Properties of Blending Functions We have just studied how the Bernstein polynomials serve very nicely as blending functions. We have noted that a degree n Bézier curve always begins at P 0 and

More information

Computer Aided Geometric Design

Computer Aided Geometric Design Brigham Young University BYU ScholarsArchive All Faculty Publications 2012-01-10 Computer Aided Geometric Design Thomas W. Sederberg tom@cs.byu.edu Follow this and additional works at: https://scholarsarchive.byu.edu/facpub

More information

Curves, Surfaces and Recursive Subdivision

Curves, Surfaces and Recursive Subdivision Department of Computer Sciences Graphics Fall 25 (Lecture ) Curves, Surfaces and Recursive Subdivision Conics: Curves and Quadrics: Surfaces Implicit form arametric form Rational Bézier Forms Recursive

More information

Note on Industrial Applications of Hu s Surface Extension Algorithm

Note on Industrial Applications of Hu s Surface Extension Algorithm Note on Industrial Applications of Hu s Surface Extension Algorithm Yu Zang, Yong-Jin Liu, and Yu-Kun Lai Tsinghua National Laboratory for Information Science and Technology, Department of Computer Science

More information

Free-Form Deformation (FFD)

Free-Form Deformation (FFD) Chapter 14 Free-Form Deformation (FFD) Free-form deformation (FFD) is a technique for manipulating any shape in a free-form manner. Pierre Bézier used this idea to manipulate large numbers of control points

More information

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 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 12: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Homework assignment 5 due tomorrow, Nov

More information