这是一篇vip文章,如果你还不是vip,可以移步https://www.ilikexff.cn/articles/165免费阅读。
介绍
贝塞尔曲线是计算机图形学中最重要的概念之一,以其在表示曲线时的灵活性和精确性而闻名。广泛应用于计算机图形学、动画、路径规划等领域的数学曲线。
贝塞尔曲线的数学原理基础是1912年成立的伯恩斯坦多项式。
简单来说,贝塞尔曲线是通过可变数量的点定义的。当控制点只有两个时,绘制出来的是一条直线,也称为线性贝塞尔曲线。
具有三个控制点的贝塞尔曲线是 二次贝塞尔曲线,四个点控制的则是三次贝塞尔曲线,以此类推。
其中,二次和三次贝塞尔曲线比较常用,也是比较受欢迎的两种。因为他们在计算简单性和能够表示无限范围的曲线之间取得了平衡。
曲线方程
贝塞尔曲线方程可以表示为:
其中, B ( t ) B(t) B(t) 是贝塞尔曲线在参数 t 上的点。
n n n是贝塞尔曲线的次数
P i P_i Pi是控制点。
更具体的,对于一阶贝塞尔曲线,公式如下:
B ( t ) = ( 1 − t ) P 0 + t P 1 ,其中 t ∈ [ 0 , 1 ] B(t) = (1 - t) P_0 + t P_1 \quad \text{,其中 } t \in [0, 1] B(t)=(1−t)P0+tP1,其中 t∈[0,1]
其中的 P 0 P_0 P0, P 1 P_1 P1是两个控制点,曲线从 P 0 P_0 P0出发,经过 P 1 P_1 P1,且为一条直线。
二次贝塞尔曲线有三个控制点,通常用于平滑的路径绘制。该曲线依赖于一个控制点来弯曲直线,这种操作相比很多人都不陌生,我们在很多绘图软件中需要用到曲线或者带箭头的曲线时,都会通过鼠标拖动头尾之外的中间点来实现想要的弯曲效果。
B ( t ) = ( 1 − t ) 2 P 0 + 2 ( 1 − t ) t P 1 + t 2 P 2 ,其中 t ∈ [ 0 , 1 ] B(t) = (1 - t)^2 P_0 + 2(1 - t)t P_1 + t^2 P_2 \quad \text{,其中 } t \in [0, 1] B(t)=(1−t)2P0+2(1−t)tP1+t2P2,其中 t∈[0,