【发布时间】:2009-12-13 15:16:07
【问题描述】:
我有一个三次贝塞尔曲线。但是当我只需要一点时,我就有问题了。我只有 X 轴的值,并且想找到一个与 Y 轴对应的值。或者找到t步,我可以很容易地计算出Y轴。
有什么办法吗?或者有什么公式可以做到这一点?
【问题讨论】:
标签: geometry bezier point curve
我有一个三次贝塞尔曲线。但是当我只需要一点时,我就有问题了。我只有 X 轴的值,并且想找到一个与 Y 轴对应的值。或者找到t步,我可以很容易地计算出Y轴。
有什么办法吗?或者有什么公式可以做到这一点?
【问题讨论】:
标签: geometry bezier point curve
如果曲线不是X monotone,任何解决方案都必须处理可能存在多个解决方案的事实。考虑三次贝塞尔曲线 (0,0),(2,0),(-1,1),(1,1):
如您所见,有 4 个参数值(和 Y 坐标)在 X==1/2 处。
这意味着如果您使用细分(这可能是您最简单的解决方案),那么您需要注意您的初始边界 t 值仅围绕您想要的点。
您还可以猜测这对代数解的阶数意味着什么。
【讨论】:
通过为这些维度添加系数,参数曲线可以扩展到任何维度。你确定你把事情搞清楚了吗?您似乎使用 x 轴作为曲线参数 t。 t 参数通过两个三次方程控制 X 和 Y 坐标的计算。看看Wikipedia,它为 2D 案例提供了一些非常简洁的解释。
编辑:
作为一般三次多项式求解。但请注意,它可能有 3 个解决方案。
【讨论】: