Cocos2d-android (03) 向量

向量的基本运算及动作

 1 import org.cocos2d.actions.interval.CCJumpBy;
 2 import org.cocos2d.actions.interval.CCMoveBy;
 3 import org.cocos2d.layers.CCLayer;
 4 import org.cocos2d.nodes.CCSprite;
 5 import org.cocos2d.types.CGPoint;
 6 
 7 public class GameLayer extends CCLayer {
 8     
 9     private CCSprite spriteA;
10     private CCSprite spriteB;    
11 
12     public GameLayer() {
13         spriteA = CCSprite.sprite("player.png");
14         spriteB = CCSprite.sprite("player.png");
15 
16         this.addChild(spriteA);
17         this.addChild(spriteB);
18 
19         CGPoint startPoint = CGPoint.ccp(200, 200);
20         CGPoint deltaPoint = CGPoint.ccp(400, 400);
21 
22         spriteA.setPosition(startPoint);
23         spriteB.setPosition(startPoint);
24         
25         //向量加法
26         CGPoint addPoint = CGPoint.ccpAdd(startPoint, deltaPoint);
27         //向量减法
28         CGPoint subPoint = CGPoint.ccpSub(startPoint, deltaPoint);
29         //向量的乘法(一个向量乘以一个浮点数)
30         CGPoint multPoint = CGPoint.ccpMult(startPoint, 2.0f);
31         //计算单位向量
32         CGPoint normalizePoint = CGPoint.ccpNormalize(startPoint);
33         
34         spriteB.setPosition(addPoint);
35         
36         //五秒钟内基于当前位置移动deltaPoint(x增加400,y增加400)
37         CCMoveBy moveBy = CCMoveBy.action(5, deltaPoint);
38         //五秒钟内四次从当前位置跳跃deltaPoint(x增加400,y增加400)
39         CCJumpBy jumpBy = CCJumpBy.action(5, deltaPoint, 200, 4);
40         
41         spriteB.runAction(jumpBy);
42     }
43 }
原文地址:https://www.cnblogs.com/zhangtingkuo/p/3589930.html