【发布时间】:2013-11-27 03:57:38
【问题描述】:
所以我正在尝试为精灵设置动画,并且我刚刚找到了 CCBezierBy/CCBezierTo 方法,它们为我省去了很多麻烦,但它们只能作为三次函数工作。
如何使它们成为二次方? (我需要 S 曲线)
只有 3 个控制点严重限制了您可以做的事情。
谢谢。
【问题讨论】:
标签: objective-c cocos2d-iphone bezier
所以我正在尝试为精灵设置动画,并且我刚刚找到了 CCBezierBy/CCBezierTo 方法,它们为我省去了很多麻烦,但它们只能作为三次函数工作。
如何使它们成为二次方? (我需要 S 曲线)
只有 3 个控制点严重限制了您可以做的事情。
谢谢。
【问题讨论】:
标签: objective-c cocos2d-iphone bezier
我认为你不理解这里的贝塞尔曲线:S 曲线不能用二次贝塞尔曲线建模,它们只能做具有单个拐点的曲线。三次曲线可以有两个拐点,所以二次曲线只能模拟看起来像 | 的曲线。或 C,三次曲线可以模拟任何看起来像 |、C 或 S 的东西
三次函数有一个起始曲线点、两个控制点和一个曲线结束点,总共有四个控制点;二次函数有一个起始曲线点、一个控制点和一个曲线结束点,总共三个控制点。
所以您想要的是三次曲线,而这正是 CCBezierBy/CCBezierTo 方法所提供的。它们允许您将贝塞尔曲线指定为两个控制点和终点,因为您已经有了起点。
【讨论】: