Cocos2d iphone Cocos2d和iOS:Can';不理解使用ccBezierConfig使用控制点

Cocos2d iphone Cocos2d和iOS:Can';不理解使用ccBezierConfig使用控制点,cocos2d-iphone,ccsprite,uibezierpath,Cocos2d Iphone,Ccsprite,Uibezierpath,编辑:如果问题写得不好,请查看视频(),与本页底部的链接相同 我正在尝试使用ccBezierConfig和Cocos2D绘制一条非常简单的贝塞尔曲线。在阅读维基百科时,我试图了解一些控制点,并发现以下图像: 如果你在维基百科的页面上看到我拍摄的图片,就会看到一个很酷的动画。看一看 这是我使用的代码: CCSprite *r = [CCSprite spriteWithFile:@"hi.png"]; r.anchorPoint = CGPointMake(0.5

编辑:如果问题写得不好,请查看视频(),与本页底部的链接相同

我正在尝试使用ccBezierConfig和Cocos2D绘制一条非常简单的贝塞尔曲线。在阅读维基百科时,我试图了解一些控制点,并发现以下图像:

如果你在维基百科的页面上看到我拍摄的图片,就会看到一个很酷的动画。看一看

这是我使用的代码:

        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];
该应用程序在纵向模式下运行,我的推测与的控制点和代码中的控制点相匹配:

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相同,因为在维基百科模式中只有三个点

我得到了一个我无法理解的输出。。我制作了一段视频,是youtube上的一段私人视频:


好的,答案很简单

不是cocos2d绘制的。相反,请检查同一wiki页面中的。这就是你应该看到的

  • 初始位置是精灵的位置(P0)
  • 控制点1和2分别为P1和P2
  • 终点就是终点
  • 不错的视频,顺便说一句,我很喜欢


    cocos2d库中
    CCActionInterval.h
    文件中的证据:

    /** An action that moves the target with a cubic Bezier curve by a certain distance.
     */
    @interface CCBezierBy : CCActionInterval <NSCopying>
    {
        ccBezierConfig config;
        CGPoint startPosition;
    }
    
    /**使用三次贝塞尔曲线将目标移动一定距离的动作。
    */
    @接口CCBezierBy:CCActionInterval
    {
    ccBezierConfig;
    CGPoint起始位置;
    }
    


    应该可以帮助你直观地构建你的,而不是调整值并运行应用程序。

    顺便说一句,你似乎有一个输入错误,你正在分配
    控制点\u 1两次。链接已关闭或我得到一个403:-(