我用这个算法来计算二次贝塞尔曲线的长度:http: //www.malczak.linuxpl.com/blog/quadratic-bezier-curve-length/
但是,我想要做的是计算贝塞尔曲线的长度,从0到t,其中0 <t <1
有没有办法修改上面链接中使用的公式来获得贝塞尔曲线的第一段的长度?
为了澄清,我不是在寻找q(0)和q(t)之间的距离,而是寻找这些点之间的弧长.
(我不希望使用自适应细分来使长度近似)
假设我使用一系列bezierCurveTo()电话制作弯曲路径.我希望通过增加帧后帧绘制的百分比,使它在动画中逐渐显示.问题是我无法找到一种标准方法来仅绘制画布路径的一部分 - 是否有人知道实现这一目标的好方法(甚至是一种棘手的方法)?
如果我有4个点描述贝塞尔曲线P1,P2,P3,P4(其中P1和P4是曲线的终点,P2和P3是曲线的控制点),我怎么能找到描述的点只是这个贝塞尔曲线的一部分?
我发现这个答案正是我正在寻找的,但答案似乎错了.如果我在应该代表整个贝塞尔曲线的方程中设置t0 = 0和t1 = 1,则结果点无效.它们不等于原始点.
似乎该解决方案与De Casteljau的算法有关,但我无法理解它是如何工作的.