贝塞尔曲线公式 求详细解释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了贝塞尔曲线公式 求详细解释相关的知识,希望对你有一定的参考价值。

最近想写一个javascript动画定制的插件在这个数学公式上遇到了点问题。就是关于贝塞尔曲线的方程原理。网上找了好久就是没找到我能看懂的。真心的求解 等待各位数学大神

贝塞尔曲线就是这样的一条曲线,它是依据四个位置任意的点坐标绘制出的一条光滑曲线。在历史上,研究贝塞尔曲线的人最初是按照已知曲线参数方程来确定四个点的思路设计出这种矢量曲线绘制法。
贝塞尔曲线又称贝兹曲线或贝济埃曲线,一般的矢量图形软件通过它来精确画出曲线,贝兹曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。当然在一些比较成熟的位图软件中也有贝塞尔曲线工具,如PhotoShop等。
贝塞尔曲线是应用于二维图形应用程序的数学曲线。曲线的定义有四个点:起始点、终止点(也称锚点)以及两个相互分离的中间点。滑动两个中间点,贝塞尔曲线的形状会发生变化。

贝塞尔曲线方程要分几类,而且很复杂.不好全部弄上来,建议你去找数学专业或者是理论物理专业的高等数学用书。
参考技术A 贝塞尔曲线就是这样的一条曲线,它是依据四个位置任意的点坐标绘制出的一条光滑曲线。在历史上,研究贝塞尔曲线的人最初是按照已知曲线参数方程来确定四个点的思路设计出这种矢量曲线绘制法。
贝塞尔曲线又称贝兹曲线或贝济埃曲线,一般的矢量图形软件通过它来精确画出曲线,贝兹曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。当然在一些比较成熟的位图软件中也有贝塞尔曲线工具,如PhotoShop等。
贝塞尔曲线是应用于二维图形应用程序的数学曲线。曲线的定义有四个点:起始点、终止点(也称锚点)以及两个相互分离的中间点。滑动两个中间点,贝塞尔曲线的形状会发生变化。

贝塞尔曲线方程要分几类,而且很复杂.不好全部弄上来,建议你去找数学专业或者是理论物理专业的高等数学用书。

贝塞尔曲线

参考技术A

有一种动画是跟着一条轨迹走的,又叫曲线动画,曲线有很多种,最著名的是 贝塞尔曲线 。什么是贝塞尔曲线,最简单的就是你用photoshop的钢笔工具画出来的曲线就是贝塞尔曲线。

曲线的核心定义: 起始点、终止点(也称锚点)、控制点。通过调整控制点,贝塞尔曲线的形状会发生变化。

贝塞尔曲线是分阶数的。

一阶贝塞尔曲线:

二阶贝塞尔曲线:

看到这里,应该明白贝塞尔曲线是怎么回事了。图中绿色的是曲线的切线。

三阶贝塞尔曲线:

高阶贝塞尔曲线:

看图非常的复杂,看公式的推导:
拿二阶的曲线公式来说是这样的:

看起来很复杂,把它拆分开来看:

B0 和 B1分别是 P0 到 P1 和 P1到 P2 的 1 阶贝塞尔曲线。而 2 阶贝塞尔曲线 B 就是 B0 到 B1 的 1 阶贝塞尔曲线。这样理解起来应该比较好理解。

然而还是很复杂,看 n 阶贝塞尔曲线的推导公式:

给定点 P0 P1 、…、 Pn ,其贝塞尔曲线即:

可以用下面的递归表达:

术语
一些关于参数曲线的术语,有

即多项式

又称作 n 阶的 伯恩斯坦基底多项式 ,定义0的0次方 = 1。
Pi 称作贝塞尔曲线的 控制点 。 多边形 以带有 线 的贝塞尔点连接而成,起始于 P0
并以 Pn 终止,称作 贝塞尔多边形 (或 控制多边形 )。贝塞尔多边形的 凸包 (convex hull)包含有贝塞尔曲线。

因为贝塞尔曲线公式里有时间,而且在高中大学都没学过,所有理解起来比较困难。真是艺术般的曲线。

参考:
http://my.oschina.net/ososchina/blog/677307
http://blog.csdn.net/vrix/article/details/39206975
http://blog.csdn.net/tianjian4592/article/details/47067161
http://www.2cto.com/kf/201503/380377.html
http://blog.csdn.net/androidzhaoxiaogang/article/details/8680330
http://blog.csdn.net/linmiansheng/article/details/18763987

以上是关于贝塞尔曲线公式 求详细解释的主要内容,如果未能解决你的问题,请参考以下文章

贝塞尔曲线原理(实现图真漂亮)

Android UI贝塞尔曲线 ② ( 二阶贝塞尔曲线公式 | 三阶贝塞尔曲线及公式 | 高阶贝塞尔曲线 )

贝塞尔曲线

Android UI贝塞尔曲线 ⑤ ( 德卡斯特里奥算法 | 贝塞尔曲线递推公式 )

必须要理解掌握的贝塞尔曲线(原创)

用三阶贝塞尔曲线拟合圆