
向量的基本运算及动作
import org.cocos2d.actions.interval.CCJumpBy;
import org.cocos2d.actions.interval.CCMoveBy;
import org.cocos2d.layers.CCLayer;
import org.cocos2d.nodes.CCSprite;
import org.cocos2d.types.CGPoint; public class GameLayer extends CCLayer { private CCSprite spriteA;
private CCSprite spriteB; public GameLayer() {
spriteA = CCSprite.sprite("player.png");
spriteB = CCSprite.sprite("player.png"); this.addChild(spriteA);
this.addChild(spriteB); CGPoint startPoint = CGPoint.ccp(200, 200);
CGPoint deltaPoint = CGPoint.ccp(400, 400); spriteA.setPosition(startPoint);
spriteB.setPosition(startPoint); //向量加法
CGPoint addPoint = CGPoint.ccpAdd(startPoint, deltaPoint);
//向量减法
CGPoint subPoint = CGPoint.ccpSub(startPoint, deltaPoint);
//向量的乘法(一个向量乘以一个浮点数)
CGPoint multPoint = CGPoint.ccpMult(startPoint, 2.0f);
//计算单位向量
CGPoint normalizePoint = CGPoint.ccpNormalize(startPoint); spriteB.setPosition(addPoint); //五秒钟内基于当前位置移动deltaPoint(x增加400,y增加400)
CCMoveBy moveBy = CCMoveBy.action(5, deltaPoint);
//五秒钟内四次从当前位置跳跃deltaPoint(x增加400,y增加400)
CCJumpBy jumpBy = CCJumpBy.action(5, deltaPoint, 200, 4); spriteB.runAction(jumpBy);
}
}