gpt4 book ai didi

c++ - 线弯曲的简单算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:23:56 28 4
gpt4 key购买 nike

我正在寻找一种简单的线弯曲算法(很像烟花自由形式工具)。在我的 C++ 程序中,一条线是一组有序的点,每个点都是 (x,y) 形式。假设我有 5 个(只是为了简单起见)有序点的直线(该线不一定平行于任何轴)。我捏住第三个点并将其向上拖动。我期待有一条新的、类似高斯的曲线。我如何实现“点”和“线”并不重要,但请记住,我应该向新的预期线添加更多点,这样它就会弯曲、精致和流畅(而不是换行)。我想到了使用高斯函数,但我需要移动弯曲部分的能力(见下图)。

提前致谢!

Figures 1 - 3 describe the process of "Pinching and curving"

最佳答案

你需要一个 B-spline或贝塞尔曲线来近似你的形状。

有一个nice interactive demo的贝塞尔样条,所以你可以玩看效果。下面是示例屏幕截图:

bezier

根据您的操作系统和开发环境,可能已经有许多可用的工具或 API。

关于c++ - 线弯曲的简单算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20770903/

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