关于如何通过输入几个点来推广贝塞尔曲线的问题

时间:2010-07-23 06:40:35

标签: c++ bezier

我希望生成一条贝塞尔曲线,通过鼠标输入的几个点。这些点数超过四个,任何人都可以帮助我并给我一些关于如何实现它的建议吗? 更多的谢谢。 祝你好运!

2 个答案:

答案 0 :(得分:0)

只需将数学写入程序即可。没有为你做功课,我们无法解释。

你可以在这里开始做一些诚实的工作:Wikipedia: Bezier Curve

答案 1 :(得分:0)

你必须首先解决曲线上点之间的距离才能得到你的u&诉

通常,点之间的最短弧长约为。最佳曲线。

p0和p3是端点; f和g是曲线上的两个点。

d1是p0和f之间的距离; d和f之间的d2; d3在g和p3之间。

求解控制点,p1和p2:

设u = d1 /(d1 + d2 + d3); V =(D1 + D2)/(D1 + D2 + D3)

这是我链接到的地方:

How to find control points for a BezierSegment given Start, End, and 2 Intersection Pts in C# - AKA Cubic Bezier 4-point Interpolation