1 Dr. Scott Schaefer The Bernstein Basis and Bezier Curves
2/108 Problems with Interpolation
3/108 Problems with Interpolation
4/108 Bezier Curves Polynomial curves that seek to approximate rather than to interpolate
5/108 Bernstein Polynomials Degree 1: (1-t), t Degree 2: (1-t) 2, 2(1-t)t, t 2 Degree 3: (1-t) 3, 3(1-t) 2 t, 3(1-t)t 2, t 3
6/108 Bernstein Polynomials Degree 1: (1-t), t Degree 2: (1-t) 2, 2(1-t)t, t 2 Degree 3: (1-t) 3, 3(1-t) 2 t, 3(1-t)t 2, t 3 Degree 4: (1-t) 4, 4(1-t) 3 t, 6(1-t) 2 t 2, 4(1-t)t 3,t 4
7/108 Bernstein Polynomials Degree 1: (1-t), t Degree 2: (1-t) 2, 2(1-t)t, t 2 Degree 3: (1-t) 3, 3(1-t) 2 t, 3(1-t)t 2, t 3 Degree 4: (1-t) 4, 4(1-t) 3 t, 6(1-t) 2 t 2, 4(1-t)t 3,t 4 Degree 5: (1-t) 5, 5(1-t) 4 t, 10(1-t) 3 t 2, 10(1-t) 2 t 3,5(1-t)t 4,t 5 … Degree n: for
8/108 Properties of Bernstein Polynomials
9/108 Properties of Bernstein Polynomials
10/108 Properties of Bernstein Polynomials
11/108 Properties of Bernstein Polynomials Binomial Theorem:
12/108 Properties of Bernstein Polynomials Binomial Theorem:
13/108 Properties of Bernstein Polynomials Binomial Theorem:
14/108 Properties of Bernstein Polynomials Binomial Theorem:
15/108 Properties of Bernstein Polynomials
16/108 Properties of Bernstein Polynomials
17/108 Properties of Bernstein Polynomials
18/108 Properties of Bernstein Polynomials
19/108 More Properties of Bernstein Polynomials
20/108 More Properties of Bernstein Polynomials
21/108 More Properties of Bernstein Polynomials
22/108 More Properties of Bernstein Polynomials
23/108 Properties of Bernstein Polynomials
24/108 Properties of Bernstein Polynomials Base case:
25/108 Properties of Bernstein Polynomials Base case:
26/108 Properties of Bernstein Polynomials Base case: Inductive Step: Assume
27/108 Properties of Bernstein Polynomials Base case: Inductive Step: Assume
28/108 Properties of Bernstein Polynomials Base case: Inductive Step: Assume
29/108 Properties of Bernstein Polynomials Base case: Inductive Step: Assume
30/108 Bezier Curves
31/108 Bezier Curves
32/108 Bezier Curves
33/108 Bezier Curve Properties Interpolate end-points
34/108 Bezier Curve Properties Interpolate end-points
35/108 Bezier Curve Properties Interpolate end-points
36/108 Bezier Curve Properties Interpolate end-points
37/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
38/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
39/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
40/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
41/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
42/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge Another Bezier curve of vectors!!!
43/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge
44/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge Curve lies within the convex hull of the control points
45/108 Bezier Curve Properties Interpolate end-points Tangent at end-points in direction of first/last edge Curve lies within the convex hull of the control points Bezier Lagrange
46/108 Matrix Form of Bezier Curves
47/108 Matrix Form of Bezier Curves
48/108 Matrix Form of Bezier Curves
49/108 Matrix Form of Bezier Curves
50/108 Matrix Form of Bezier Curves Computation in monomial basis is unstable!!! Most proofs/computations are easier in Bernstein basis!!!
51/108 Change of Basis Bezier coefficients
52/108 Change of Basis Coefficients in monomial basis!!! Bezier coefficients
53/108 Change of Basis
54/108 Change of Basis
55/108 Change of Basis
56/108 Change of Basis
57/108 Change of Basis monomial coefficients
58/108 Change of Basis monomial coefficients Coefficients in Bezier basis!!!
59/108 Degree Elevation Power basis is trivial: add 0 t n+1 What about Bezier basis?
60/108 Degree Elevation
61/108 Degree Elevation
62/108 Degree Elevation
63/108 Degree Elevation
64/108 Degree Elevation
65/108 Degree Elevation
66/108 Degree Elevation
67/108 Degree Elevation
68/108 Degree Elevation
69/108 Degree Elevation
70/108 Degree Elevation
71/108 Pyramid Algorithms for Bezier Curves Polynomials aren’t pretty Is there an easier way to evaluate the equation of a Bezier curve?
72/108 Pyramid Algorithms for Bezier Curves
73/108 Pyramid Algorithms for Bezier Curves
74/108 Pyramid Algorithms for Bezier Curves
75/108 Pyramid Algorithms for Derivatives of Bezier Curves Take derivative of any level of pyramid!!! (up to constant multiple)
76/108 Pyramid Algorithms for Derivatives of Bezier Curves Take derivative of any level of pyramid!!! (up to constant multiple)
77/108 Subdividing Bezier Curves Given a single Bezier curve, construct two smaller Bezier curves whose union is exactly the original curve
78/108 Subdividing Bezier Curves Given a single Bezier curve, construct two smaller Bezier curves whose union is exactly the original curve
79/108 Subdividing Bezier Curves Given a single Bezier curve, construct two smaller Bezier curves whose union is exactly the original curve
80/108 Subdividing Bezier Curves Given a single Bezier curve, construct two smaller Bezier curves whose union is exactly the original curve
81/108 Subdividing Bezier Curves Given a single Bezier curve, construct two smaller Bezier curves whose union is exactly the original curve
82/108 Subdividing Bezier Curves Control points for left curve!!!
83/108 Subdividing Bezier Curves Control points for right curve!!!
84/108 Subdividing Bezier Curves
85/108 Variation Diminishing Intuitively means that the curve “wiggles” no more than its control polygon
86/108 Variation Diminishing Intuitively means that the curve “wiggles” no more than its control polygon Lagrange Interpolation
87/108 Variation Diminishing Intuitively means that the curve “wiggles” no more than its control polygon Bezier Curve
88/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Bezier Curve
89/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Bezier Curve
90/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Bezier Curve
91/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Bezier Curve
92/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Bezier Curve
93/108 Variation Diminishing For any line, the number of intersections with the control polygon is greater than or equal to the number of intersections with the curve Lagrange Interpolation
94/108 Applications: Intersection Given two Bezier curves, determine if and where they intersect
95/108 Applications: Intersection Check if convex hulls intersect If not, return no intersection If both convex hulls can be approximated with a straight line, intersect lines and return intersection Otherwise subdivide and recur on subdivided pieces
96/108 Applications: Intersection
97/108 Applications: Intersection
98/108 Applications: Intersection
99/108 Applications: Intersection
100/108 Applications: Intersection
101/108 Applications: Intersection
102/108 Applications: Intersection
103/108 Applications: Intersection
104/108 Applications: Intersection
105/108 Applications: Intersection
106/108 Applications: Intersection
107/108 Application: Font Rendering
108/108 Application: Font Rendering