如何在 C++ 中实现贝塞尔曲线?

2021-12-17 00:00:00 interpolation math spline c++

我想实现一个贝塞尔曲线.我以前在 C# 中做过这个,但我完全不熟悉 C++ 库.我应该如何创建二次曲线?

I'd like to implement a Bézier curve. I've done this in C# before, but I'm totally unfamiliar with the C++ libraries. How should I go about creating a quadratic curve?

void printQuadCurve(float delta, Vector2f p0, Vector2f p1, Vector2f p2);

显然我们需要使用线性插值,但标准数学库中是否存在这种方法?如果没有,我在哪里可以找到它?

Clearly we'd need to use linear interpolation, but does this exist in the standard math library? If not, where can I find it?

我使用的是 Linux.

I'm using Linux.

推荐答案

您之前是否使用过 C# 库?

Did you use a C# library earlier?

在 C++ 中,没有贝塞尔曲线的标准库函数可用(目前).你当然可以推出自己的(CodeProject sample)或寻找数学图书馆.

In C++, no standard library function for Bezier curves is available (yet). You can of course roll your own (CodeProject sample) or look for a math library.

这篇 博文很好地解释了这个想法,但在 Actionscript 中.翻译应该没有太大问题.

This blogpost explains the idea nicely but in Actionscript. Translation should not be much of a problem.

相关文章