Cocos2d iphone Cocos2d中BezierBy和BezierTo的区别?

Cocos2d iphone Cocos2d中BezierBy和BezierTo的区别?,cocos2d-iphone,cocos2d-android,Cocos2d Iphone,Cocos2d Android,我想知道BezierBy和BezierTo的区别。如果假设这是一个场景,那么在下面的代码中会发生什么 CCBezierConfig bezier = new CCBezierConfig(); // Bezier curve bezier.controlPoint_1 = CGPoint.make(1002.0f,475.0f); bezier.controlPoint_2 = CGPoint.make(454.0f, 281.0f);

我想知道BezierBy和BezierTo的区别。如果假设这是一个场景,那么在下面的代码中会发生什么

     CCBezierConfig bezier = new CCBezierConfig();


     // Bezier curve  
     bezier.controlPoint_1 = CGPoint.make(1002.0f,475.0f);
     bezier.controlPoint_2 = CGPoint.make(454.0f, 281.0f);
     bezier.endPosition = CGPoint.make(-20.0f,490.0f);

     CCBezierBy by = CCBezierBy.action(100, bezier);
     CCBezierTo to = CCBezierTo.action(2, bezier);

     CCCallFuncN actionMoveDone = CCCallFuncN.action(this,"spriteMoveFinished");
     CCSequence actions = CCSequence.actions(by, actionMoveDone);

     obstacle1.runAction(actions);
在理解moveTo和moveBy中也有相同的问题


请帮助我了解这些概念。

CCMoveTo将节点移动到位置。CCMoveBy将节点移动一个像素。他们所有的行为都是一样的。 例如:

CCNode *a = [[CCNode alloc] init];
[a setPosition:CGPointMake(100, 100)]; //our node starts at point (100, 100)

现在,如果你将它移动到CGPointMake(200200),他的位置将是(200200)。但是如果你将它从(100100)移动到CGPointMake(200200),它将是(300300)。

谢谢你,伙计,这就是我需要的,它是通过。。。by-相对于最后一个位置,而to是移动到相应位置。。