编辑:如果问题写得不好,请看视频(3),与本页底部相同的链接。
我正在尝试使用绘制一条非常简单的贝塞尔曲线ccBezier配置和 Cocos2D。在维基百科上阅读时,我试图理解一些控制点并发现了这张图片:
http://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/Bezier_2_big.png/240px-Bezier_2_big.png
如果您查看我从中获取图像的维基百科页面,您会看到一个很酷的动画。看一看here.
这是我使用的代码:
CCSprite *r = [CCSprite spriteWithFile:@"hi.png"];
r.anchorPoint = CGPointMake(0.5f, 0.5f);
r.position = CGPointMake(0.0f, 200.0f);
ccBezierConfig bezier;
bezier.controlPoint_1 = CGPointMake(0.0f, 200.0f);
bezier.controlPoint_1 = CGPointMake(180.0f, 330.0f);
bezier.endPosition = CGPointMake(320.0f,200.0f);
id bezierForward = [CCBezierBy actionWithDuration:1 bezier:bezier];
[r runAction:bezierForward];
[self addChild:r z:0 tag:77];
该应用程序在纵向模式下运行,我的猜测与控制点相匹配1我的代码中的内容是:
sprite.position should correspond to P0
bezier.controlPoint_1 should correspond to P0
bezier.controlPoint_2 should correspond to P1
bezier.endPosition should correspond to P2
我确实尝试了两种方法。通过设置精灵的位置和不设置它。
我假设位置应该与维基百科模式中的 controlPoint_1 相同1只有三点。
我得到一个我不太明白的输出。我制作了一个小视频,是一个私人 YouTube 视频:
观看视频请点击这里