cocos2dx中关于Action动作的相关API的详细介绍




//CCMoveBy 
创建一个移动的动作

//参数1:移动到目标坐标所需的时间

//参数2:目标坐标

//支持reverse
可以获取其反向动作

//CCMoveTo 
一样的

//CCActionInterval * moveBy = CCMoveBy::create(5,ccp(300, 100));

//CCActionInterval * actionmoveback= moveBy->reverse();

//sp->runAction(actionmoveback);


//CCScaleTo  
作用:创建一个缩放的动作

//参数1:达到缩放大小所需的时间

//参数2
:缩放的比例

//CCActionInterval * scaleto = CCScaleTo ::create(2, 2);

//sp->runAction(scaleto);


//CCScaleBy 
作用:创建一个缩放的动作

//参数1:达到缩放大小的所需时间

//参数2:缩放比例

//CCActionInterval * scaleby = CCScaleBy::create(2, 2);

//CCActionInterval * actionbyback = scaleby->reverse();

//sp->runAction(actionbyback);


//CCRotateTo作用创建一个旋转的动作

//参数1:旋转的时间

//参数2:旋转饿角度 
0 - 360

//CCActionInterval * rotateto = CCRotateTo::create(2, 90);

//sp->runAction(rotateto);


//CCSkewTo作用创建一个倾斜的动作

//参数1:倾斜到特定角度所需的时间

//参数2:x轴的倾斜角度

//参数3:y轴的倾斜角度

//CCActionInterval * skewto = CCSkewTo::create(2, 10, 10);

//sp->runAction(skewto);


//CCJumpTo
作用:创建一个跳的动作

//参数1:跳到目标动作位子的所需时间

//参数2:目标位置

//参数3:跳的高度

//参数4跳到目标位置的次数

//CCActionInterval* jumpto = CCJumpTo ::create(2, ccp(300, 200), 50, 4 );

//sp->runAction(jumpto);


//CCJumpBy作用:创建一个跳的动作

//参数1:跳到目标动作位子的所需时间

//参数2:目标位置

//参数3:跳的高度

//参数4跳到目标位置的次数

//这个支持方向动作reverse

//CCActionInterval * jumpby = CCJumpBy ::create(3, ccp(300, 200), 50, 4);

//CCActionInterval * ac= jumpby->reverse();

//sp->runAction(ac);


//CCBezier

//ccBezierConfig结构体

//ccBezierConfig bezierCon;

//bezierCon.controlPoint_1=CCPointMake(200, 150);//控制点1

//bezierCon.controlPoint_2=CCPointMake(200, 160);//控制点2

//bezierCon.endPosition =CCPointMake(340, 100);//
结束位置

// CCBezierTo

//   
创建一个贝塞尔曲线运动的动作

//   
参数1:贝塞尔曲线运动的时间

//   
参数2
:ccBezierConfig结构体

//   
CCActionInterval * action = CCBezierTo::create(2, bezierCon);

//   
CCActionInterval * action = CCBezierBy::create(3, bezierCon);//支持反向

//   
CCActionInterval * action1 = action->reverse();

//   
sp->runAction(action1);


//   
CCFadeIn

//   
作用:创建一个渐变出现的动作

//   
参数是时间

//   
CCActionInterval * fadein = CCFadeIn::create(2);

//   
sp->runAction(fadein);


//CCFadeOut

//   
作用:创建一个渐变消失的动作

//   
参数是时间

//   
CCActionInterval * fadeout = CCFadeOut::create(2);

//   
sp->runAction(fadeout);


//CCTintTo作用:创建一个色彩变化的消失动作

//   
参数1:色彩变化的动作

//   
参数2
:红色分量

//   
参数3:蓝色分量

//   
CCActionInterval * tinto = CCTintTo ::create(3, 255, 255, 0);

//   
sp->runAction(tinto);


//   
CCTintBy

//   
作用:创建一个色彩变化的出现动作

//   
参数1:色彩变化的动作

//   
参数2
:红色分量

//   
参数3:蓝色分量  
但是家了reverse就是
反向的

//   
CCActionInterval * tintby = CCTintBy::create(3, 0, 255, 255);

//   
CCActionInterval * tintby1 = tintby->reverse();

//   
sp->runAction(tintby1);


//   
CCBlink

//   
作用 :创建一额闪烁的动作

//   
参数1:闪烁完成的时间

//   
参数2:闪烁的次数

//   
CCActionInterval * blink = CCBlink ::create(3, 10);

//   
sp->runAction(blink);


//   
CCDelayTime

//   
创建一个延迟的动作

//   
参数 
延迟的时间

//   
CCActionInterval * delaytime = CCDelayTime::create(3);

//   
sp->runAction(delaytime);


//   
CCOrbitCamera

//   
作用:创建一个球面坐标轨迹进行旋转的动作

//   
参数1

旋转轨迹的时间

//   
参数2
:起始半径

//   
参数3:半径差

//   
参数4:起始z角

//   
参数5:旋转z角的差

//   
参数6:起始x角

//   
参数7:旋转x角的差

//    
CCActionInterval * orbitcamera = CCOrbitCamera::create(3, 10, 0, 45, 180, 90, 0);

//   
sp->runAction(orbitcamera);


//   
CCCardinalSpline

//   
作用:创建数组 
点的数组

CCPointArray * array = CCPointArray::create(20);

array->addControlPoint(ccp(0,0));

array->addControlPoint(ccp(210,0));

array->addControlPoint(ccp(210,240));

array->addControlPoint(ccp(0,160));

array->addControlPoint(ccp(0,0));

//   
CCCardinalSplineTo

//   
作用:创建一个样条曲线轨迹的动作

//   
参数1:完成轨迹所需的时间

//   
参数2:控制点的坐标数组

//   
拟合度 
其值= 0
路径最柔和

//   
CCActionInterval  * CardinalSplineTo=CCCardinalSplineTo::create(3, array, 0);

//  
sp->runAction(CardinalSplineTo);


//CCCardinalSplineBy

//   
作用:创建一个样条曲线轨迹的动作

//   
参数1:完成轨迹所需的时间

//   
参数2:控制点的坐标数组

//   
拟合度 
其值= 0
路径最柔和

//   
CCActionInterval * CardinalSplineBy = CCCardinalSplineBy::create(3, array, 0);

//   
sp->runAction(CardinalSplineBy);


//   
CCCatmullRomTo  CCCatmullRomBY

//   
作用:创建一个样条插值轨迹

//   
参数1:完成轨迹的时间

//   
参数2:控制点的数组坐标

//   
CCActionInterval * catmullRomTo = CCCatmullRomTo::create(3, array);

//   
sp->runAction(catmullRomTo);


//   
CCFollow

//   
作用:创建一个跟随动作

//   
参数1:跟随的目标对象

//   
跟随范围,离开范围就不再跟随

//创建一个参照物spT

//   
CCSprite * spt = CCSprite::create("Icon.png");

//   
spt->setPosition(ccp(420,40));

//   
addChild(spt);

//   
sp->runAction(CCMoveTo::create(3, ccp(940,sp->getPositionY())));


//    
CCFollow * follow = CCFollow::create(sp,CCRectMake(0, 0, 960, 320));

//   
this-> runAction(follow);


//   
CCEaseBounceIn 目标动作

//   
CCActionInterval* move = CCMoveTo::create(3, ccp(300, sp->getPositionY()));

//   
让目标动作缓慢开始

//   
参数:目标动作

//   
CCActionInterval * EaseBounceIn = CCEaseBounceIn::create(move);

//   
sp->runAction(EaseBounceIn);


//CCEaseBounceOut作用:让目标动作赋予反弹力,且以目标动作结束位子开始反弹

//   
参数目标动作

//   
CCActionInterval * easeBounceOut = CCEaseBounceOut ::create(move);

//   
sp->runAction(easeBounceOut);


//CCEaseBounceInOut

//作用:让目标动作赋予反弹力,且以目标动作起始与结束位子开始反弹

//   
CCActionInterval * easeBounceInOut= CCEaseBounceInOut::create(move);

//   
sp->runAction(easeBounceInOut);


//   
CCEaseBackIn

//  
 作用:让目标动作赋予回力

且以目标动作起点位置作为回力点

//   
参数:目标动作

//   
CCActionInterval * easeBackIn = CCEaseBackIn::create(move);

//   
sp->runAction(easeBackIn);


//   
CCEaseBackOut

//   
作用:让目标动作赋予回力

且以目标动作终点位置作为回力点

//   
参数:目标动作

//   
CCActionInterval *easeBackOut = CCEaseBackOut::create(move);

//   
sp->runAction(easeBackOut);


//CCEaseBackInOut

//   
作用:让目标动作赋予回力

且以目标动作起点和终点位置作为回力点

//   
参数:目标动作

//   
CCActionInterval * easeBackInOut = CCEaseBackInOut::create(move);

//   
sp->runAction(easeBackInOut);


//   
CCEaseElasticIn

//   
作用:让目标动作赋予弹性
,且以目标动作起点位子赋予弹性

//    
参数:目标动作

//   
CCActionInterval * easeElasticIn= CCEaseElasticIn::create(move);

//   
sp->runAction(easeElasticIn);


//    
CCEaseElasticOut

//   
作用:让目标动作赋予弹性
,且以目标动作终点位子赋予弹性

//    
参数:目标动作

//   
CCActionInterval *easeElasticOut = CCEaseElasticOut::create(move);

//   
sp->runAction(easeElasticOut);


//   
CCEaseElasticInOut

//   
作用:让目标动作赋予弹性
,且以目标动作起点和终点位子赋予弹性

//    
参数:目标动作

//   
CCActionInterval *easeElasticInOut = CCEaseElasticOut::create(move);

//   
sp->runAction(easeElasticInOut);


//   
CCEaseExponentialIn

//   
让目标动作缓慢开始

//   
参数:目标动作

//   
CCActionInterval * easeExponentialIn= CCEaseExponentialIn::create(move);

//   
sp->runAction(easeExponentialIn);


//   
CCEaseExponentialOut

//   
让目标动作缓慢中止

//   
参数:目标动作

//   
CCActionInterval * easeExponentialIn= CCEaseExponentialOut::create(move);

//   
sp->runAction(easeExponentialIn);


//   
CCEaseExponentialInOut

//   
让目标动作缓慢开始和中止

//   
参数:目标动作

//   
CCActionInterval * easeExponentialInOut= CCEaseExponentialInOut::create(move);

//   
sp->runAction(easeExponentialInOut);


//   
CCEaseRateAction

//   
作用

让目标动作设置速率

//   
参数1:目标动作

//   
参数2:速率

//   
CCActionInterval * move = CCMoveTo::create(5, ccp(300,sp->getPositionY()));

//   
CCActionInterval * easeRateAction = CCEaseRateAction::create(move, 3);

//   
sp->runAction(easeRateAction);


//   
CCEaseSineIn作用:动作由慢到快

//   
参数:目标动作

//   
CCActionInterval * easeSineIn = CCEaseSineIn::create(move);

//   
sp->runAction(easeSineIn);


//  
 CCEaseSineOut

//   
作用:动作由快到慢

//   
参数:目标动作

//   
CCActionInterval * easeSineOut = CCEaseSineOut::create(move);

//   
sp->runAction(easeSineOut);


//   
CCEaseSineInOut

//   
作用:动作由慢到快再快到慢

//   
参数:目标动作

//   
CCActionInterval * easeSineInOut = CCEaseSineInOut::create(move);

//   
sp->runAction(easeSineInOut);


//   
CCSpeed

//   
作用:让目标动作运行速度加倍

//   
参数1:目标动作

//   
参数2:倍速

//   
CCActionInterval * move = CCMoveTo::create(10, ccp(300,sp->getPositionY()));

//   
CCSpeed * speed =CCSpeed::create(move, 100);

//   
sp->runAction(speed);


//   
CCSpawn

// 
作用:让多个动作同时执行

//   
参数:目标动作的可变参数

//   
CCActionInterval * move = CCMoveTo::create(10, ccp(300,sp->getPositionY()));

//   
CCActionInterval * scale = CCScaleTo::create(2, 3);

//   
CCActionInterval * rotate = CCRotateTo::create(4, 190);

//   
CCFiniteTimeAction * spawn =CCSpawn::create(move,scale,rotate,NULL);

//   
sp->runAction(spawn);


//   
CCSequence

//   
作用:让多个动作按照前后顺序逐一执行

//   
参数:目标动作的可变参数

//   
CCActionInterval * move = CCMoveTo::create(2, ccp(300, sp->getPositionY()));

//   
CCActionInterval * scale = CCScaleTo::create(2, 3);

//   
CCFiniteTimeAction * seq= CCSequence::create(move,scale,NULL);

//   
sp->runAction(seq);

//   
扩展如果要对目标动作全部进行方向运动,可以使用如下形式操作

//   
CCFiniteTimeAction *seq=CCSequence::create(moveby,scaleby,...NULL);

//   
CCFiniteTimeAction * reverseseq = CCSequence::create(seq,seq->reverse(),NULL)

//   
注意CCSequence中的所有动作都必须支持reverse函数,否则会出现异常

//   
CCActionInterval * move = CCMoveBy::create(2, ccp(300, sp->getPositionY()));

//   
CCActionInterval * scale = CCScaleBy::create(2, 3);

//   
CCFiniteTimeAction * seq= CCSequence::create(move,scale,NULL);

//   
CCFiniteTimeAction * reveseseq = CCSequence::create(seq,seq->reverse(),NULL);

//   
sp->runAction(reveseseq);


//   
CCRepeat

//   
作用:对目标动作进行重复运动(目标动作可以是CCSequence
,CCSpawn)

//   
参数1:目标动作

//   
参数2:重复次数

//   
CCActionInterval * move = CCMoveTo::create(2, ccp(300, sp->getPositionY()));

//   
CCActionInterval * move2 = CCMoveTo::create(2, ccp(100,100));

//   
CCFiniteTimeAction*seq =CCSequence::create(move,move2,NULL);

//   
CCFiniteTimeAction *repeat = CCRepeat::create(seq, 3);

//   
sp->runAction(repeat);


//   
CCRepeatForever

//   
作用:对目标动作进行永久性的重复运动(目标动作可以是CCSequence
,CCSpawn)

//   
参数:目标动作

//   
CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));

//   
CCActionInterval * move1 = CCMoveTo::create(1, ccp(100,100));

//   
CCFiniteTimeAction* seq = CCSequence::create(move,move1,NULL);

//   
CCActionInterval * repeatForever =CCRepeatForever::create((CCActionInterval* )seq);

//   
sp->runAction(repeatForever);


//   
CCCallFunc

//   
作用:创建一个回调动作(调用不带参数的回调方法);

//   
参数1:目标动作

//   
参数2:目标回调函数

//   
CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));

//   
CCCallFunc * funcall= CCCallFunc::create(this, callfunc_selector(HelloWorld::callbackC));

//   
CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);

//   
sp->runAction(seq);


//CCCallFuncN

//作用:创建一个回调动作(调用
带一个参数的回调方法);

//参数1:目标动作

//参数2:目标回调函数

//CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));

// CCCallFuncN * funcall= CCCallFuncN::create(this, callfuncN_selector(HelloWorld::callbackN));

//   
CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);

//   
sp->runAction(seq);


//   
CCCallFuncND

//   
作用:创建一个回调动作(调用
带两个参数的回调方法);

//   
参数1:目标动作

//   
参数2:目标回调函数

CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));

CCCallFuncND * funcall= CCCallFuncND::create(this, callfuncND_selector(HelloWorld::callbackND) 
,(void*)0xbebabeba);

CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);

sp->runAction(seq);

return true;

}

时间: 2024-08-07 00:14:21

cocos2dx中关于Action动作的相关API的详细介绍的相关文章

Spring 相关jar包详细介绍

文章转自:http://blog.csdn.net/farawayhome/article/details/6623946 aspectj目录下是在Spring框架下使用aspectj的源代码和测试程序文件. Aspectj是java最早的提供AOP的应用框架. dist 目录下是Spring 的发布包,关于发布包下面会详细进行说明. docs 目录下是相关的文档,包括有Spring api 的javadoc.reference 参考指南.Spring的标签库使用文件及Spring MVC 的M

Cocos2d-x 3.2 Action动作

本文参考于Cocos2d-x v3.2学习笔记中的(八)动作(Action) Action有三个子类: 1.FiniteTimeAction类:所有在有限时间能够完成的动作(action)的基类. 2.Follow类:一种“跟随”某一个节点的动作. 3.Speed类:改变一个action的运行速度,使他持续更长时间 (speed>1)或者更短的时间(speed<1).(Speed对象不能作为一个动作序列的一部分, 因为它不是一个ActionInterval对象) 其次FiniteTimeAct

【android】Android中图形图片及处理相关Api的小总结

开发应用中图片的使用是必不可少的,Android系统提供了丰富的图片支持功能.我们除了可以使Drawable资源库,还可以使用Bitmap.Picture类去创建图片,也可以使用Canvas.Paint.Path类等去绘制我们满意的图片.在自定义控件时,这些API使用尤为常见.因此,小编觉得有必要简单的做个小总结. 那就先从Bitmap和BitmapFactory开始吧 Bitmap和BitmapFactory BitmapFactory       Bitmap代表一张位图.BitmapDra

cocos2d-x中六种持续性动作

持续性动作: (一) 位置变化动作 Move by to Jump by to (二) 属性变化动作 Scale by to Rotate by to Fade in out to Tint to by (三) 视觉特效动作 Blink Animation (四) 控制动作 DelayTime(用于序列动作里面和并列动作里面) Repeat RepeatForever (五) 复合动作 Repeat RepeatForever Spawn (六) 序列动作 Sequence

php中get_headers函数的作用及用法的详细介绍

get_headers() 是PHP系统级函数,他返回一个包含有服务器响应一个 HTTP 请求所发送的标头的数组.如果失败则返回 FALSE 并发出一条 E_WARNING 级别的错误信息(可用来判断远程文件是否存在). 函数定义 array get_headers ( string $url [, int $format = 0 ] ) 参数 url 目标 URL format 如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名. 示例

Cocos2d-X中的动作展示《二》

由于Cocos2d-X中的动作较多,我将所有的动作制作成了一个滚动视图,每个滚动视图上都有动作名,单击滚动视图就可以展示相应的动作 程序效果图: 使用滚动视图实现动作切换 动作展示 首先创建一个ActionMore类 ActionMore.h中的代码 #ifndef _ActionMore_H_ #define _ActionMore_H_ #include "cocos2d.h" #include "cocos-ext.h" USING_NS_CC; USING_

Cocos2d-x 3.0final 终结者系列教程10-绘图节点Node中的Action

Action是作用在Node上的逻辑处理,比如让Node移动.旋转.缩放.变色.跳跃.翻转.透明等等,都有相对应的Action Action如何在Node上使用 1.定义Action对象 如 auto act=MoveTo::create(Point(30,0),1); 2.在Node上执行runAction auto sp=Sprite::create("npc.png"); sp->runAction(act); 这样就实现了在sp这个Node上执行移动到30,0这个坐标的动

cocos2dx中的动作

CCAction是cocos2dx中专门用来处理动作相关的类,几乎所有的与动作相关的类都是从它派生而来的.而CCAction继承自CCObject class CCFiniteTimeAction : public CCAction 由CCFiniteTimeAction 派生出的两个主要类分别是: 瞬时动作 CCActionInstant 持续性动作 CCActionInterval 瞬时动作: 即时间间隔为0的动作,实质上要到下一帧才能执行的动作. 瞬时动作是指能立刻完成的动作,是CCFin

Cocos2d-X中的动作特效

Cocos2d-X中提供了非常丰富的动作特效 例如:网格动画 扭曲特效 3D瓷砖波动特效 程序代码: #include "ActionEffect.h" #include "HelloWorldScene.h" static const char* _actionName[] = { "CCFadeOutBLTiles", "CCFadeOutDownTiles", "CCFadeOutTRTiles",