三次方贝塞尔曲线
在数学的数值分析领域中,贝塞尔曲线(英语:Bézier curve,亦作“贝塞尔”)是计算机图形学中相当重要的参数曲线。更高维度的广泛化贝塞尔曲线就称作贝兹曲面,其中贝兹三角是一种特殊的实例。
贝塞尔曲线于1962年,由法国工程师皮埃尔·贝兹(Pierre Bézier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由保尔·德·卡斯特里奥于1959年运用德卡斯特里奥算法开发,以稳定数值的方法求出贝塞尔曲线。
实例说明
线性贝塞尔曲线
给定点P0、P1,线性贝塞尔曲线只是一条两点之间的直线。这条线由下式给出:
。
TrueType字型就运用了以贝兹样条组成的二次贝塞尔曲线。
三次方贝塞尔曲线
P0、P1、P2、P3四个点在平面或在三维空间中定义了三次方贝塞尔曲线。曲线起始于P0走向P1,并从P2的方向来到P3。一般不会经过P1或P2;这两个点只是在那里提供方向资讯。P0和P1之间的间距,决定了曲线在转而趋进P2之前,走向P1方向的“长度有多长”。
曲线的参数形式为:
阶贝塞尔曲线可如下推断。给定点P0、P1、…、Pn,其贝塞尔曲线即
:
表示由点P0、P1、…、Pn所决定的贝塞尔曲线。则
阶的贝塞尔曲线,即双
即多项式
时,分成四段的贝塞尔曲线,可以小于千分之一的最大半径误差近似于圆)。- 位于固定偏移量的曲线(来自给定的贝塞尔曲线),又称作偏移曲线(假平行于原来的曲线,如两条铁轨之间的偏移)无法以贝塞尔曲线精确的形成(某些平凡实例除外)。无论如何,现存的启发法通常可为实际用途中给出近似值。
建构贝塞尔曲线
线性曲线
 |
线性贝塞尔曲线演示动画,t在[0,1]区间 |
线性贝塞尔曲线函数中的t会经过由P0至P1的B(t)所描述的曲线。例如当t=0.25时,B(t)即一条由点P0至P1路径的四分之一处。就像由0至1的连续t,B(t)描述一条由P0至P1的直线。
二次曲线
为建构二次贝塞尔曲线,可以中介点Q0和Q1作为由0至1的t:
- 由P0至P1的连续点Q0,描述一条线性贝塞尔曲线。
- 由P1至P2的连续点Q1,描述一条线性贝塞尔曲线。
- 由Q0至Q1的连续点B(t),描述一条二次贝塞尔曲线。
 | |  |
二次贝塞尔曲线的结构 | | 二次贝塞尔曲线演示动画,t在[0,1]区间 |
高阶曲线
为建构高阶曲线,便需要相应更多的中介点。对于三次曲线,可由线性贝塞尔曲线描述的中介点Q0、Q1、Q2,和由二次曲线描述的点R0、R1所建构:
 | |  |
三次贝塞尔曲线的结构 | | 三次贝塞尔曲线演示动画,t在[0,1]区间 |
对于四次曲线,可由线性贝塞尔曲线描述的中介点Q0、Q1、Q2、Q3,由二次贝塞尔曲线描述的点R0、R1、R2,和由三次贝塞尔曲线描述的点S0、S1所建构:
 | |  |
四次贝塞尔曲线的结构 | | 四次贝塞尔曲线演示动画,t在[0,1]区间 |
还可参阅五阶贝塞尔曲线的构成:
 |
五次贝塞尔曲线演示动画,t在[0,1]区间 |
这些运动轨迹使用de Casteljau算法计算出贝塞尔曲线。
升阶
n次贝塞尔曲线可以转换为一个形状完全相同的n+1次贝塞尔曲线。这在软件只支援特定阶次的贝塞尔曲线时很有用。例如,Cairo只支援三次贝塞尔曲线,你就可以用升阶的方法在Cairo画出二次贝塞尔曲线。
我们利用
都乘上 (1 − t) 或 t,让每一项都往上升一阶。以下是将二阶升为三阶的范例


式中
可以任意挑选。
因此,新的控制点为

此处
,因此事先计算好
有理贝塞尔曲线的示例