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