纯Javascript实现平滑曲线生成

网站建设5年前发布
33 0 0

纯Javascript实现平滑曲线生成,平滑曲线生成是一个很实用的技术。,很多时候,我们都需要通过绘制一些折线,然后让计算机平滑的连接起来,或者是生成一些平滑的面。,先来看下最终效果(红色为我们输入的直线,蓝色为拟合过后的曲线) 首尾可以特殊处理让图形看起来更好)。,纯Javascript实现平滑曲线生成,实现思路是利用贝塞尔曲线进行拟合。,贝塞尔曲线(英语:Bézier curve)是计算机图形学中相当重要的参数曲线。,二次贝塞尔曲线,纯Javascript实现平滑曲线生成,二次方贝塞尔曲线的路径由给定点P0、P1、P2的函数B(t)追踪:,纯Javascript实现平滑曲线生成,三次贝塞尔曲线,纯Javascript实现平滑曲线生成,对于三次曲线,可由线性贝塞尔曲线描述的中介点Q0、Q1、Q2,和由二次曲线描述的点R0、R1所建构:,纯Javascript实现平滑曲线生成,根据上面的公式我们可以得到计算函数。,纯Javascript实现平滑曲线生成,问题在于如何得到控制点,我们以比较简单的方法:,纯Javascript实现平滑曲线生成,ab线段:这里简单处理,只使用了二阶的曲线生成。,PS:这里可以按照个人想法处理。,bc线段:使用abc计算出来的控制点c2和bcd计算出来的控制点c3以此类推。

© 版权声明

相关文章