本文来自http://blog.csdn.net/runaying ,引用必须注明出处!
cocos2d-x节点(CCActionTween.h)API
温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记
//补间动画
///cocos2d-x-3.0alpha0/cocos2dx/actions
#ifndef __CCACTIONTWEEN_H__
#define __CCACTIONTWEEN_H__
#include "CCActionInterval.h"
NS_CC_BEGIN
/**
* @addtogroup actions
* @{
*/
class CC_DLL ActionTweenDelegate
{
public:
/**
* @js NA
* @lua NA
*/
virtual ~ActionTweenDelegate() {}
virtual void updateTweenAction(float value, const char* key) = 0;
};
/** ActionTween(补间动画)
ActionTween 是一个 action 让允许你更新任何对象的属性。.
例, 你希望在两秒内,使它的宽度实行从 200 变为 300, then:
@code
auto modifyWidth = ActionTween::create(2, "width", 200, 300);
target->runAction(modifyWidth);
@endcode
Another example: ScaleTo action 可以使用PropertyAction改写:
@code
// scaleA and scaleB are equivalents(相等)
auto scaleA = ScaleTo::create(2, 3); // (duration, to)
auto scaleB = ActionTween::create(2, "scale", 1, 3); // (duration, key, from, to)
@endcode
@since v0.99.2
*/
class CC_DLL ActionTween : public ActionInterval
{
public:
/** 使用 属性名(key)、from 参数、to 参数 创建并初始化一个 action. */
static ActionTween* create(float duration, const char* key, float from, float to);
/** 使用 属性名(key)、from 参数、to 参数 初始化一个 action. */
bool initWithDuration(float duration, const char* key, float from, float to);
// Overrides
void startWithTarget(Node *target) override;
void update(float dt) override;
ActionTween* reverse() const override;
ActionTween *clone() const override;
protected:
std::string _key;
float _from, _to;
float _delta;
};
// end of actions group
/// @}
NS_CC_END
#endif /* __CCACTIONTWEEN_H__ */