cocos2dx 3.x(常见的46种动作)

  1     Sprite * sp= Sprite::create("Icon.png");
  2     sp->setPosition(Vec2(150, 150));
  3     addChild(sp,0,922);
  4
  5     //    Action动作
  6
  7     // MoveBy  创建一个移动的动作   参数1:移动到目标坐标所需的时间 参数2:目标坐标    支持reverse 可以获取其反向动作
  8     //     MoveTo  一样的
  9     ActionInterval * moveBy = MoveBy::create(5,Vec2(300, 100));
 10     ActionInterval * actionmoveback= moveBy->reverse();
 11     sp->runAction(actionmoveback);
 12
 13     //     ScaleTo   作用:创建一个缩放的动作
 14     //    参数1:达到缩放大小所需的时间
 15     //    参数2 :缩放的比例
 16     ActionInterval * scaleto = ScaleTo ::create(2, 2);
 17     sp->runAction(scaleto);
 18
 19     //     ScaleBy  作用:创建一个缩放的动作
 20     //    参数1:达到缩放大小的所需时间  参数2:缩放比例
 21     ActionInterval * scaleby = ScaleBy::create(2, 2);
 22     ActionInterval * actionbyback = scaleby->reverse();
 23     sp->runAction(actionbyback);
 24
 25     //     RotateTo
 26     //    作用创建一个旋转的动作
 27     //    参数1:旋转的时间  参数2:旋转饿角度  0 - 360
 28     ActionInterval * rotateto = RotateTo::create(2, 90);
 29     sp->runAction(rotateto);
 30
 31     //   SkewTo
 32     //   作用创建一个倾斜的动作
 33     //    参数1:倾斜到特定角度所需的时间
 34     //    参数2:x轴的倾斜角度
 35     //    参数3:y轴的倾斜角度
 36     ActionInterval * skewto = SkewTo::create(2, 10, 10);
 37     sp->runAction(skewto);
 38
 39     //     JumpTo
 40     //    作用:创建一个跳的动作
 41     //    参数1:跳到目标动作位子的所需时间
 42     //    参数2:目标位置
 43     //    参数3:跳的高度
 44     //    参数4跳到目标位置的次数
 45     ActionInterval* jumpto = JumpTo ::create(2, Vec2(300, 200), 50, 4 );
 46     sp->runAction(jumpto);
 47
 48     //     JumpBy
 49     //    作用:创建一个跳的动作
 50     //    参数1:跳到目标动作位子的所需时间
 51     //    参数2:目标位置
 52     //    参数3:跳的高度
 53     //    参数4跳到目标位置的次数
 54     //    这个支持方向动作reverse
 55     ActionInterval * jumpby = JumpBy ::create(3, Vec2(300, 200), 50, 4);
 56     ActionInterval * ac= jumpby->reverse();
 57     sp->runAction(ac);
 58
 59
 60
 61     //         Bezier
 62     //     BezierConfig结构体
 63      BezierConfig bezierCon;
 64     bezierCon.controlPoint_1=Vec2(200, 150);//控制点1
 65     bezierCon.controlPoint_2=Vec2(200, 160);//控制点2
 66     bezierCon.endPosition =Vec2(340, 100);// 结束位置
 67     //BezierTo
 68     //        创建一个贝塞尔曲线运动的动作
 69     //        参数1:贝塞尔曲线运动的时间
 70     //        参数2 : BezierConfig结构体
 71     ActionInterval * action = BezierTo::create(2, bezierCon);
 72     ActionInterval * action1 = BezierBy::create(3, bezierCon);//支持反向
 73     ActionInterval * action2 = action->reverse();
 74     sp->runAction(action1);
 75
 76
 77     //FadeIn
 78     //作用:创建一个渐变出现的动作
 79     //参数是时间
 80     ActionInterval * fadein = FadeIn::create(2);
 81     sp->runAction(fadein);
 82
 83
 84     //     FadeOut
 85     //    作用:创建一个渐变消失的动作
 86     //    参数是时间
 87     ActionInterval * fadeout = FadeOut::create(2);
 88     sp->runAction(fadeout);
 89
 90
 91     // TintTo
 92     //    作用:创建一个色彩变化的消失动作
 93     //    参数1:色彩变化的动作
 94     //    参数2 :红色分量
 95     //    参数3:蓝色分量
 96     ActionInterval * tinto = TintTo ::create(3, 255, 255, 0);
 97     sp->runAction(tinto);
 98
 99
100     //     TintBy
101     //    作用:创建一个色彩变化的出现动作
102     //    参数1:色彩变化的动作
103     //    参数2 :红色分量
104     //    参数3:蓝色分量   但是家了reverse就是 反向的
105     ActionInterval * tintby = TintBy::create(3, 0, 255, 255);
106     ActionInterval * tintby1 = tintby->reverse();
107     sp->runAction(tintby1);
108
109     //     Blink
110     //    作用 :创建一额闪烁的动作
111     //    参数1:闪烁完成的时间
112     //    参数2:闪烁的次数
113
114     ActionInterval * blink = Blink ::create(3, 10);
115     sp->runAction(blink);
116
117
118
119     //     DelayTime
120     //    创建一个延迟的动作
121     //    参数  延迟的时间
122     ActionInterval * delaytime = DelayTime::create(3);
123     sp->runAction(delaytime);
124
125     //     OrbitCamera
126     //    作用:创建一个球面坐标轨迹进行旋转的动作
127     //    参数1 : 旋转轨迹的时间
128     //    参数2 :起始半径
129     //    参数3:半径差
130     //    参数4:起始z角
131     //    参数5:旋转z角的差
132     //    参数6:起始x角
133     //    参数7:旋转x角的差
134     ActionInterval * orbitcameraa = OrbitCamera::create(3, 10, 0, 45, 180, 90, 0);
135     sp->runAction(orbitcameraa);
136
137
138     //     CardinalSpline
139     //    作用:创建数组  点的数组
140     PointArray * array = PointArray::create(20);
141     array->addControlPoint(Vec2(0,0));
142     array->addControlPoint(Vec2(210,0));
143     array->addControlPoint(Vec2(210,240));
144     array->addControlPoint(Vec2(0,160));
145     array->addControlPoint(Vec2(0,0));
146     //    CardinalSplineTo
147     //    作用:创建一个样条曲线轨迹的动作
148     //    参数1:完成轨迹所需的时间
149     //    参数2:控制点的坐标数组
150     //    拟合度  其值= 0 路径最柔和
151     ActionInterval  * CardinalSplineTo=CardinalSplineTo::create(3, array, 0);
152     sp->runAction(CardinalSplineTo);
153
154
155     //    CardinalSplineBy
156     //    作用:创建一个样条曲线轨迹的动作
157     //    参数1:完成轨迹所需的时间
158     //    参数2:控制点的坐标数组
159     //    拟合度  其值= 0 路径最柔和
160     ActionInterval * CardinalSplineBy = CardinalSplineBy::create(3, array, 0);
161     sp->runAction(CardinalSplineBy);
162
163     //    CatmullRomTo   CatmullRomBY
164     //    作用:创建一个样条插值轨迹
165     //    参数1:完成轨迹的时间
166     //    参数2:控制点的数组坐标
167     ActionInterval * catmullRomTo = CatmullRomTo::create(3, array);
168     sp->runAction(catmullRomTo);
169
170     //    Follow
171     //    作用:创建一个跟随动作
172     //    参数1:跟随的目标对象
173     //    跟随范围,离开范围就不再跟随
174     //创建一个参照物spT
175     Sprite * spt = Sprite::create("Icon.png");
176     spt->setPosition(Vec2(420,40));
177     addChild(spt);
178     sp->runAction(MoveTo::create(3, Vec2(940,sp->getPositionY())));
179
180     Follow * follow = Follow::create(sp,Rect(0, 0, 960, 320));
181     this-> runAction(follow);
182
183     //     EaseBounceIn
184     //    目标动作
185     ActionInterval* move = MoveTo::create(3, Vec2(300, sp->getPositionY()));
186     ////    让目标动作缓慢开始
187     ////    参数:目标动作
188     ActionInterval * EaseBounceIn = EaseBounceIn::create(move);
189     sp->runAction(EaseBounceIn);
190
191     //    EaseBounceOut
192     //    作用:让目标动作赋予反弹力,且以目标动作结束位子开始反弹
193     //    参数目标动作
194     ActionInterval * easeBounceOut = EaseBounceOut ::create(move);
195     sp->runAction(easeBounceOut);
196
197     //    EaseBounceInOut
198     //    作用:让目标动作赋予反弹力,且以目标动作起始与结束位子开始反弹
199     ActionInterval * easeBounceInOut= EaseBounceInOut::create(move);
200     sp->runAction(easeBounceInOut);
201
202     //   EaseBackIn
203     //    作用:让目标动作赋予回力 , 且以目标动作起点位置作为回力点
204     //    参数:目标动作
205     ActionInterval * easeBackIn = EaseBackIn::create(move);
206     sp->runAction(easeBackIn);
207
208     //    EaseBackOut
209     //    作用:让目标动作赋予回力 , 且以目标动作终点位置作为回力点
210     //    参数:目标动作
211     ActionInterval *easeBackOut = EaseBackOut::create(move);
212     sp->runAction(easeBackOut);
213
214     //     EaseBackInOut
215     //    作用:让目标动作赋予回力 , 且以目标动作起点和终点位置作为回力点
216     //    参数:目标动作
217      ActionInterval * easeBackInOut =  EaseBackInOut::create(move);
218     sp->runAction(easeBackInOut);
219
220     //     EaseElasticIn
221     //    作用:让目标动作赋予弹性 ,且以目标动作起点位子赋予弹性
222     //     参数:目标动作
223      ActionInterval * easeElasticIn=  EaseElasticIn::create(move);
224     sp->runAction(easeElasticIn);
225
226     //      EaseElasticOut
227     //    作用:让目标动作赋予弹性 ,且以目标动作终点位子赋予弹性
228     //     参数:目标动作
229      ActionInterval *easeElasticOut =  EaseElasticOut::create(move);
230     sp->runAction(easeElasticOut);
231
232     //     EaseElasticInOut
233     //    作用:让目标动作赋予弹性 ,且以目标动作起点和终点位子赋予弹性
234     //     参数:目标动作
235      ActionInterval *easeElasticInOut =  EaseElasticOut::create(move);
236     sp->runAction(easeElasticInOut);
237
238
239     //     EaseExponentialIn
240     //    让目标动作缓慢开始
241     //    参数:目标动作
242      ActionInterval * easeExponentialIn=  EaseExponentialIn::create(move);
243     sp->runAction(easeExponentialIn);
244
245     //     EaseExponentialOut
246     //    让目标动作缓慢中止
247     //    参数:目标动作
248     ActionInterval * easeExponentialInt=  EaseExponentialOut::create(move);
249     sp->runAction(easeExponentialInt);
250
251     //     EaseExponentialInOut
252     //    让目标动作缓慢开始和中止
253     //    参数:目标动作
254      ActionInterval * easeExponentialInOut=  EaseExponentialInOut::create(move);
255     sp->runAction(easeExponentialInOut);
256
257     //     EaseRateAction
258     //    作用 : 让目标动作设置速率
259     //    参数1:目标动作
260     //    参数2:速率
261      ActionInterval * moveto =  MoveTo::create(5,  p(300,sp->getPositionY()));
262      ActionInterval * easeRateAction =  EaseRateAction::create(move, 3);
263     sp->runAction(easeRateAction);
264
265     //     EaseSineIn
266     //    作用:动作由慢到快
267     //      参数:目标动作
268      ActionInterval * easeSineIn =  EaseSineIn::create(move);
269     sp->runAction(easeSineIn);
270
271     //     EaseSineOut
272     //    作用:动作由快到慢
273     //      参数:目标动作
274      ActionInterval * easeSineOut =  EaseSineOut::create(move);
275     sp->runAction(easeSineOut);
276
277     //     EaseSineInOut
278     //    作用:动作由慢到快再快到慢
279     //      参数:目标动作
280      ActionInterval * easeSineInOut =  EaseSineInOut::create(move);
281     sp->runAction(easeSineInOut);
282
283
284
285 //     Speed
286     //    作用:让目标动作运行速度加倍
287     //    参数1:目标动作
288     //    参数2:倍速
289      ActionInterval * move =  MoveTo::create(10,  p(300,sp->getPositionY()));
290      Speed * speed = Speed::create(move, 100);
291     sp->runAction(speed);
292
293     //     Spawn
294     //  作用:让多个动作同时执行
295     //    参数:目标动作的可变参数
296      ActionInterval * move1 =  MoveTo::create(10,  p(300,sp->getPositionY()));
297      ActionInterval * scale =  ScaleTo::create(2, 3);
298      ActionInterval * rotate =  RotateTo::create(4, 190);
299      FiniteTimeAction * spawn = Spawn::create(move1,scale,rotate,NULL);
300     sp->runAction(spawn);
301
302     //     Sequence
303     //    作用:让多个动作按照前后顺序逐一执行
304     //    参数:目标动作的可变参数
305      ActionInterval * move2 =  MoveTo::create(2,  p(300, sp->getPositionY()));
306      ActionInterval * scalet =  ScaleTo::create(2, 3);
307      FiniteTimeAction * seq=  Sequence::create(move2,scalet,NULL);
308     sp->runAction(seq);
309
310
311         //    扩展如果要对目标动作全部进行方向运动,可以使用如下形式操作
312      FiniteTimeAction *seqe= Sequence::create(moveby,scaleby,...NULL);
313      FiniteTimeAction * reverseseq =  Sequence::create(seqe,seq->reverse(),NULL)
314
315
316
317 //注意 Sequence中的所有动作都必须支持reverse函数,否则会出现异常
318      ActionInterval * move =  MoveBy::create(2,  p(300, sp->getPositionY()));
319      ActionInterval * scale =  ScaleBy::create(2, 3);
320      FiniteTimeAction * seq=  Sequence::create(move,scale,NULL);
321      FiniteTimeAction * reveseseq =  Sequence::create(seq,seq->reverse(),NULL);
322     sp->runAction(reveseseq);
323
324
325
326
327     //     Repeat
328     //    作用:对目标动作进行重复运动(目标动作可以是 Sequence , Spawn)
329     //    参数1:目标动作
330     //    参数2:重复次数
331      ActionInterval * move =  MoveTo::create(2,  p(300, sp->getPositionY()));
332      ActionInterval * move2 =  MoveTo::create(2,  p(100,100));
333      FiniteTimeAction*seq = Sequence::create(move,move2,NULL);
334      FiniteTimeAction *repeat =  Repeat::create(seq, 3);
335     sp->runAction(repeat);
336
337
338     //     RepeatForever
339     //    作用:对目标动作进行永久性的重复运动(目标动作可以是 Sequence , Spawn)
340     //    参数:目标动作
341      ActionInterval * move =  MoveTo::create(1,  p(300, sp->getPositionY()));
342      ActionInterval * move1 =  MoveTo::create(1,  p(100,100));
343      FiniteTimeAction* seq =  Sequence::create(move,move1,NULL);
344      ActionInterval * repeatForever = RepeatForever::create(( ActionInterval* )seq);
345     sp->runAction(repeatForever);
346
347     //     CallFunc
348     //    作用:创建一个回调动作(调用不带参数的回调方法);
349     //    参数1:目标动作
350     //    参数2:目标回调函数
351      ActionInterval * move =  MoveTo::create(1,  p(300, sp->getPositionY()));
352      CallFunc * funcall=  CallFunc::create(this, callfunc_selector(HelloWorld::callbackC));
353      FiniteTimeAction * seq =  Sequence::create(move,funcall,NULL);
354     sp->runAction(seq);
355
356     //     CallFuncN
357     //    作用:创建一个回调动作(调用 带一个参数的回调方法);
358     //    参数1:目标动作
359     //    参数2:目标回调函数
360      ActionInterval * move =  MoveTo::create(1,  p(300, sp->getPositionY()));
361      CallFuncN * funcall=  CallFuncN::create(this, callfuncN_selector(HelloWorld::callbackN));
362      FiniteTimeAction * seq =  Sequence::create(move,funcall,NULL);
363     sp->runAction(seq);
364
365     //     CallFuncND
366     //    作用:创建一个回调动作(调用 带两个参数的回调方法);
367     //    参数1:目标动作
368     //    参数2:目标回调函数
369      ActionInterval * move =  MoveTo::create(1,  p(300, sp->getPositionY()));
370      CallFuncND * funcall=  CallFuncND::create(this, callfuncND_selector(HelloWorld::callbackND)  ,(void*)0xbebabeba);
371      FiniteTimeAction * seq =  Sequence::create(move,funcall,NULL);
372     sp->runAction(seq);
373
374     
时间: 2024-10-27 05:32:07

cocos2dx 3.x(常见的46种动作)的相关文章

cocos2dx 动画常见的22种特效 (转)

bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSize size =CCDirector::sharedDirector()->getWinSize();//获取屏幕大小 CCSprite * sp = CCSprite::create("Icon.png"); sp->set

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) .

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) 标签: sql server优化数据库服务器 2014-12-31 10:13 11988人阅读 评论(0) 收藏 举报 本文章已收录于: 今天看到一位博友的文章,觉得不错,转载一下,希望对大家有帮助,更多文章,请访问:http://blog.haoitsoft.com 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存

查询速度慢的原因很多,常见如下几种

1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有 创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7. 锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必 要的行和列 10.查询语句不好,没有优化 ●可以通过如下方法来优化查询 : 1. 把数据.日志.索引放到不同

比较分别在数据段与附加段中的字符串以及汇编中常见的四种中断指令

1.从键盘输入两个相同长度的字符串,分别放到数据段和附加段,利用串比较指令比较数据段和附加段中两个字符串,如果两串一样,输出Y,否则输出N. 这个程序调试了好久,之间遇到两个问题,其一是附加段的使用,需要对DS压栈对ES调整处理,即 1 PUSH DS 2 MOV AX,ES 3 MOV DS,AX 4 ;...... 5 POP DS 其二是,串比较指令CMPSW进行字比较,而CMPSB进行字节比较,需要区分开.(其实我现在还不明白即便是字符组成的串,进行字比较为什么会出错,有高手知道吗?)

(转载)PLC内部电路常见的几种形式

摘要:本文主要分析了数字量输入时PLC内部电路常见的几种形式,并结合传感器常见的NPN和PNP输出,给出了和不同的PLC电路形式连接时的接线方法. Summary: This article has mainly analyzed several internal circuit forms of PLC digital input module, and unified common NPN and PNP outputs of sensors, has given wiring method

Android常见的三种内部类

在java里类中再定义类,这种在其他类内部类叫做内部类,在Android开发里最常见有三种内部类分别是(成员内部类.方法内部类.匿名内部类) 一.成员内部类 1 public class Test { 2 //不对外开放的 3 class memberInnerClass{ 4 public void memberInner(){ 5 System.out.println("成员内部类"); 6 } 7 } 8 } 编译一下,我们看到目录中出现了两个class文件在我们的工作目录里,可

Java中常见的几种RuntimeException

一般面试中java Exception(runtimeException )是必会被问到的问题常见的异常列出四五种,是基本要求.更多的....需要注意积累了 常见的几种如下: NullPointerException - 空指针引用异常ClassCastException - 类型强制转换异常.IllegalArgumentException - 传递非法参数异常.ArithmeticException - 算术运算异常ArrayStoreException - 向数组中存放与声明类型不兼容对象

JSP常见的7个动作指令

JSP常见的7个动作指令 1.jsp:forward指令    执行页面转向,将请求处理转发到下一个页面 2.jsp:param指令    用于传递参数 3.jsp:include指令    用于动态引入一个JSP页面 4.jsp:plugin指令    用于下载JavaBean或Applet到客户端执行 5.jsp:useBean指令    创建一个JavaBean实例 6.jsp:setProperty指令    设置JavaBean实例的属性值 7.jsp:getProperty指令  

常见的三种Web服务架构

常见的三种Web服务架构 转自http://www.cnblogs.com/bvbook/archive/2008/12/24/1360942.html 相互竞争的服务架构 The Competing Architectures 我们已经给出了“不同Web服务会有不同做法”的两个主要问题,现在要据此对不同风格的Web服务进行分类了.根据我的研究,常见的Web服务架构主要有三种:REST式架构.RPC式架构和REST-RPC混合架构.下面依次对它们进行介绍. REST式.面向资源的架构 RESTf