Since u∈(0,1), (1−uu)i are always greater than zero. ∑i=0nbiui(1−u)n−i equals zero, only when all bi equal zero, which means that ∑i=0nbiui(1−u)n−i=0 iif all bi equal zero. Thus, ui(1−u)n−i are linearly independent, and Bin(u) are also linearly independent.
They are symmetric. Bin(u)=Bn−in(1−u)
They have roots at 0 and 1 only. Bin(0)=Bn−in(1)={1fori=0,0fori>0.
They form a partition of unity. i=0∑nBin(u)=1forallu∈R.i=0∑nBin(u)=(u+(1−u))n=1n=1
They are positive in (0,1). Bin(u)>0foru∈(0,1)
They satisfy the recursion formula. Bin+1(u)⟮in+1⟯ui(1−u)n+1−ii!(n+1−i)!(n+1)!ui(1−u)n+1−i=uBi−1n(u)+(1−u)Bin(u)=u⟮i−1n⟯ui−1(1−u)n+1−i+(1−u)⟮in⟯ui(1−u)n−i=⟮i−1n⟯ui(1−u)n+1−i+⟮in⟯ui(1−u)n−i+1=[(i−1)!(n−i+1)!n!+i!(n−i)!n!]ui(1−u)n−i+1=[(i)!(n−i+1)!i⋅n!+i!(n−i+1)!n!⋅(n−i+1)]ui(1−u)n−i+1
Bezier Representation
b(u)=i=0∑nciBin(u)
任何次数小于等于n的曲线b(u)都可以通过对Bin(u)的线性组合来表示。其中,Bin(u) form a basis for all polynomials of degree ≤n.
u=a(1−t)+btfora̸=b
b(u)=i=0∑nbiBin(t) 如果bi是一个向量,且∑i=0nBin(t)=1,那么b(u)相当于是向量bi的一个线性组合,在由bi组成的凸面体里。(Affine Combination: In mathematics, a linear combination of vectors x1,…,xn, i=1∑naixi=a1x1+⋯+anxn is called an affine combination of x1,…,xn when the sum of the coefficients is 1, that is, ∑i=1nai=1.
Affine Map: In geometry, affine map is a function between affine spaces which preserve points, straight lines and planes. Also, sets of parallel lines remain parallel after an affine transformation. An affine transformation does not necessarily preserve angles between lines or distance between points, though it does preserve ratios of distances between points lying on a straight line.
Examples of affine map includes translation, scaling, homothety, similarity transformation, reflection, rotation, shear mapping, and compositions of them in any cobination and sequence. f:x→yx→Mx+b )
The De Casteljau’s algorithm
A curve: b(u)=∑i=0nbi0Bin(t), with u=a(1−t)+bt.
Derivatives of Bernstein Polynomials dtdBin(t)=dtd⟮in⟯ti(1−t)n−i=dtdi!(n−i)!n!ti(1−t)n−i=i!(n−i)!n![i⋅ti−1(1−t)n−i−ti(1−t)n−i−1⋅(n−i)]=i!(n−i)!n!i⋅ti−1(1−t)n−i−i!(n−i)!n!ti(1−t)n−i−1⋅(n−i)=(i−1)!(n−i)!n(n−1)!ti−1(1−t)n−i−i!(n−i−1)!n(n−1)!ti(1−t)n−i−1=n⟮i−1n−1⟯ti−1(1−t)n−i−n⟮in−1⟯ti(1−t)n−i−1=n[Bi−1n−1(t)+Bin−1(t)]
Define B−1n−1=0,Bnn−1=0.
Derivatives of the curve b(u) with Bezier Representation dudi=0∑nbiBin(t)=i=0∑nbidtdBin(t)dudt=i=0∑nbi⋅n[Bi−1n−1(t)−Bin−1(t)]b−a1=b−ani=0∑nbi[Bi−1n−1(t)−Bin−1(t)]=b−an[b0B−1n−1(t)−b0B0n−1(t)+b1B0n−1(t)−b1B1n−1(t)+⋯+bn−1Bn−2n−1(t)−bn−1Bn−1n−1(t)+bnBn−1n−1(t)−bnBnn−1(t)]=b−ani=0∑n−1(bi+1−bi)Bin−1(t)=b−ani=0∑n−1△biBin−1(t)
The tangents of b(u) at t=0 and t=1 are spaned by b0,b0 and bn−1,bn.
紫色的线条验证了Bernstein Polynomials的partition of unity: ∑i=0nBin(u)=1.