graphics - 将二次曲线转换为三次曲线

标签 graphics vector

看着 Convert a quadratic bezier to a cubic? ,我终于明白为什么编程老师总是告诉我数学如此重要。可惜,我没听。

任何人都可以提供更具体的 - 例如,计算机语言 - y - 将二次曲线转换为三次曲线的公式吗?了解可能存在一些舍入错误,这很好。

给定由变量表示的四边形曲线:

StartX, StartY
ControlX, ControlY
EndX, EndY

并希望StartX、StartY和EndX、EndY保持不变,但现在有了三次曲线的Control1X、Control1Y和Control2X、Control2Y。

是吗...
Control1X = StartX + (.66 * (ControlX - StartX))
Control2X = EndX + (.66 * (ControlX - EndX))

使用相同的基本函数来计算 Control1Y 和 Control2Y?

最佳答案

您的代码是正确的,只是您应该使用 2.0/3.0而不是 0.66 .

关于graphics - 将二次曲线转换为三次曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9485788/

相关文章:

Java 图形事件未按我期望的顺序发生

c++ - 在记录集中搜索/更新值

java - 等距 map 绘制、生成

algorithm - 如何在 2D 中绘制透视校正网格

c++ - std::vector 是否适合频繁调整大小?

vector - 元组向量的逐元素比较 Julia

c++ - 在类构造函数上初始化 vector

c++ - 将整个文件读入线 vector 的最有效方法

iphone - 除 CORONA 之外适用于 iphone/ipad 的任何其他游戏 SDK

android - 如何使用Lighting Color Filter使图像由暗变亮