Presentation on theme: "Computer Graphics Lecture 14 Curves and Surfaces II."— Presentation transcript:
Computer Graphics Lecture 14 Curves and Surfaces II
Computer Graphics 10/10/2008Lecture 52 Spline A long flexible strips of metal used by draftspersons to lay out the surfaces of airplanes, cars and ships Ducks weights attached to the splines were used to pull the spline in different directions The metal splines had second order continuity
Computer Graphics 10/10/2008Lecture 53 B-Splines (for basis splines) B-Splines –Another polynomial curve for modelling curves and surfaces –Consists of curve segments whose polynomial coefficients only depend on just a few control points Local control –Segments joined at knots
Computer Graphics B-splines The curve does not necessarily pass through the control points The shape is constrained to the convex hull made by the control points Uniform cubic b-splines has C 2 continuity –Higher than Hermite or Bezier curves
Computer Graphics 10/10/2008Lecture 5 Basis Functions knots We can create a long curve using many knots and B-splines The unweighted cubic B-Splines have been shown for clarity. These are weighted and summed to produce a curve of the desired shape t 4812
Computer Graphics 10/10/2008Lecture 56 Generating a curve X(t) t t Opposite we see an example of a shape to be generated. Here we see the curve again with the weighted B-Splines which generated the required shape.
Computer Graphics 10/10/2008Lecture 57 The basic one: Uniform Cubic B-Splines Cubic B-splines with uniform knot-vector is the most commonly used form of B-splines
Computer Graphics 10/10/2008Lecture 58 Cubic B-Splines The unweighted spline set of 10 control points, 10 splines, 14 knots, and but only 7 intervals. You can see why t 3 to t 4 is the first interval with a curve since it is the first with all four B-Spline functions. t 9 to t 10 is the last interval 43 t 86m m+1 0
Computer Graphics Domain of the function Order k, Degree k-1 Control points P i (i=0,…,m) Knots : t j, (j=0,…, k + m) The domain of the function t k-1 ≦ t ≦ t m+1 –Below, k = 4, m = 9, domain, t 3 ≦ t ≦ t 10 3 t m+1 0
Computer Graphics 10/10/2008Lecture 510 Cubic Uniform B-Spline 2D example For each i 4, there is a knot between Q i-1 and Q i at t = t i. Initial points at t 3 and t m+1 are also knots. The following illustrates an example with control points set P 0 … P 9 : Knot. Control point.
Computer Graphics 10/10/2008Lecture 511 Uniform Non-rational B-Splines. First segment Q 3 is defined by point P 0 through P 3 over the range t 3 = 0 to t 4 = 1. So m at least 3 for cubic spline. Knot. Control point. P1 P2 P3 P0 Q3Q3
Computer Graphics 10/10/2008Lecture 512 Uniform Non-rational B-Splines. Second segment Q 4 is defined by point P 1 through P 4 over the range t 4 = 1 to t 5 = 2. Knot. Control point. Q4Q4 P1 P3 P4 P2
Computer Graphics 10/10/2008Lecture 513 A Bspline of order k is a parametric curve composed of a linear combination of basis B-splines B i,n P i (i=0,…,m) the control points Knots: t j, j=0,…, k + m The B-splines can be defined by B-Spline : A more general definition
Computer Graphics 10/10/2008Lecture 514 The shape of the basis functions B i,2 : linear basis functions Order = 2, degree = 1 C0 continuous
Computer Graphics 10/10/2008Lecture 515 The shape of the basis functions B i,3 : Quadratic basis functions Order = 3, degree = 2 C1 continuous
Computer Graphics 10/10/2008Lecture 516 The shape of the basis functions B i,4 : Cubic basis functions Order = 4, degree = 3 C2 continuous
Computer Graphics Uniform / non-uniform B-splines Uniform B-splines –The knots are equidistant / non-equidistant –The previous examples were uniform B-splines Parametric interval between knots does not have to be equal. Non-uniform B-splines
Computer Graphics 10/10/2008 Non-uniform B-splines. Blending functions no longer the same for each interval. Advantages –Continuity at selected control points can be reduced to C 1 or lower – allows us to interpolate a control point without side-effects. –Can interpolate start and end points. –Easy to add extra knots and control points. Good for shape modelling !
Computer Graphics Controlling the shape of the curves Can control the shape through –Control points Overlapping the control points to make it pass through a specific point –Knots Changing the continuity by increasing the multiplicity at some knot (non-uniform bsplines)
Computer Graphics 10/10/2008Lecture 520 Controlling the shape through control points First knot shown with 4 control points, and their convex hull. P1 P2 P0 P3
Computer Graphics 10/10/2008Lecture 521 Controlling the shape through control points First two curve segments shown with their respective convex hulls. Centre Knot must lie in the intersection of the 2 convex hulls. P1 P2 P0 P4 P3
Computer Graphics 10/10/2008Lecture 522 Repeated control point. First two curve segments shown with their respective convex hulls. The curve is forced to lie on the line that joins the 2 convex hulls. P1=P2 P0 P3 P4
Computer Graphics 10/10/2008Lecture 523 Triple control point. First two curve segments shown with their respective convex hulls. Both convex hulls collapse to straight lines – all the curve must lie on these lines. P1=P2=P3 P0 P4
Computer Graphics 10/10/2008Lecture 524 Controlling the shape through knots Smoothness increases with order k in B i,k –Quadratic, k = 3, gives up to C 1 continuity. –Cubic, k = 4 gives up to C 2 continuity. However, we can lower continuity order too with Multiple Knots, ie. t i = t i+1 = t i+2 = … Knots are coincident and so now we have non-uniform knot intervals. A knot with multiplicity p is continuous to the (k-1-p)th derivative. A knot with multiplicity k has no continuity at all, i.e. the curve is broken at that knot.
Computer Graphics B-Splines at multiple knots Cubic B-spline Multiplicities are indicated
Computer Graphics 10/10/2008Lecture 530 Summary of B-Splines. Functions that can be manipulated by a series of control points with C 2 continuity and local control. Don’t pass through their control points, although can be forced. Uniform –Knots are equally spaced in t. Non-Uniform –Knots are unequally spaced –Allows addition of extra control points anywhere in the set.
Computer Graphics 10/10/2008Lecture 531 Summary cont. Do not have to worry about the continuity at the join points For interactive curve modelling –B-Splines are very good.
Computer Graphics 2 nd Practical Use OpenGL to draw the teapot You must extend your code in the first assignment Bonus marks for making it nice –Bump mapping –Texture mapping –Or whatever Deadline : 10 th December
Computer Graphics 10/10/2008Lecture 533 Reading for this lecture Foley at al., Chapter 11, sections , , , , 11.3 and Introductory text, Chapter 9, sections 9.2.4, 9.2.5, 9.2.7, and 9.3..