gpt4 book ai didi

html - 贝塞尔曲线总是相同的长度

转载 作者:太空狗 更新时间:2023-10-29 13:50:41 24 4
gpt4 key购买 nike

我正在使用 HTML5 canvas 开发游戏。

我想要在两点之间绘制一条 S 形三次贝塞尔曲线,但我正在寻找一种方法来计算控制点的坐标,以便曲线本身始终具有相同的长度,无论这些点有多接近是,直到它到达曲线变成直线的点。

最佳答案

这可以通过数值求解。我假设您有一个带有 4 个控制点的立方贝塞尔曲线。在每一步中,您都有第一个 (P0) 和最后一个 (P3) 点,并且您希望计算 P1 和 P2 以使总长度保持不变。

添加此约束会删除一个自由度,因此我们还剩下 1 个自由度(从 4 开始,确定终点 (-2) 并且恒定长度是另一个 -1)。所以你需要对此做出决定。

贝塞尔曲线是定义在 0 和 1 之间的多项式,您需要在元素总和(2d?)的平方根上积分。对于三次贝塞尔曲线,这意味着 6 次多项式的 sqrt,wolfram 不知道如何求解。但是,如果您知道所有其他控制点(或知道对某些其他约束的依赖性),您可以拥有该约束的预先计算值的保存表。

关于html - 贝塞尔曲线总是相同的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8233850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com