什么是貝塞爾曲線?
貝塞爾曲線(Bézier curve),又稱貝茲曲線或貝濟埃曲線,是應用於二維圖形應用程序的數學曲線。
來源
貝塞爾曲線於1962,由法國工程師皮埃爾·貝塞爾(Pierre Bézier)所廣泛發表,他運用貝塞爾曲線來為汽車的主體進行設計。貝塞爾曲線最初由Paul de Casteljau於1959年運用de Casteljau演算法開發,以穩定數值的方法求出貝茲曲線。
貝塞爾曲線完全由其控制點決定其形狀, n個控制點對應着n-1階的貝塞爾曲線,並且可以通過遞歸的方式來繪制.
特點
貝塞爾曲線形狀完全由控制點控制,有n個控制點就對應n-1階的貝塞爾曲線。
Tip:下面公式中,B指曲線中點的集合,P指點,t指變化時間
線性公式:
給定點P0、P1,線性貝茲曲線只是一條兩點之間的直線。這條線由下式給出:
且其等同於線性插值。
二次方公式
二次方貝茲曲線的路徑由給定點P0、P1、P2的函數B(t)追蹤:
TrueType字型就運用了以貝茲樣條組成的二次貝茲曲線。
三次方公式
P0、P1、P2、P3四個點在平面或在三維空間中定義了三次方貝茲曲線。曲線起始於P0走向P1,並從P2的方向來到P3。一般不會經過P1或P2;這兩個點只是在那里提供方向資訊。P0和P1之間的間距,決定了曲線在轉而趨進P3之前,走向P2方向的“長度有多長”。
曲線的參數形式為:
現代的成象系統,如PostScript、Asymptote和Metafont,運用了以貝茲樣條組成的三次貝茲曲線,用來描繪曲線輪廓。
一般參數公式
階貝茲曲線可如下推斷。給定點P0、P1、…、Pn,其貝茲曲線即:
如上公式可如下遞歸表達: 用表示由點P0、P1、…、Pn所決定的貝茲曲線。
用平常話來說,階的貝茲曲線,即雙階貝茲曲線之間的插值。