我有一个通过三个点绘制贝塞尔曲线
的函数。我已经有 2 个点(开始和结束)- A 和 B。我如何计算这两点之间的中点,因为中点总是比这两个点的线性函数高一点或低一点。
示例:
任何公式,想法都会很棒!
最佳答案
我想这就是您要找的:
http://blog.sklambert.com/finding-the-control-points-of-a-bezier-curve/
它详细介绍了计算贝塞尔曲线上的各个点。
您可能还对这个更具体的应用示例感兴趣:
http://www.codeproject.com/Articles/223159/Midpoint-Algorithm-Divide-and-Conquer-Method-for-D
如果你真的想进入它,那么我建议这个入门:
http://pomax.github.io/bezierinfo/
贝塞尔曲线比简单的弧线要复杂一些。对于圆弧,你可以只使用这个公式:
R = H/2 + W^2/8H
...这绝对不适用于贝塞尔曲线。例如,在二次贝塞尔曲线上,要计算一个点,您必须使用:
来源:http://en.wikipedia.org/wiki/B%C3%A9zier_curve , Quadratic Bezier Curve: Calculate Point
关于c# - 计算贝塞尔曲线的中点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23596802/