CAccelerateDecelerateTransition 类

实现加速-减速转换。

语法

class CAccelerateDecelerateTransition : public CBaseTransition;

成员

公共构造函数

名称 描述
CAccelerateDecelerateTransition::CAccelerateDecelerateTransition 构造转换对象。

公共方法

名称 描述
CAccelerateDecelerateTransition::Create 调用转换库以创建封装的转换 COM 对象。 (替代 CBaseTransition::Create。)

公共数据成员

“属性” 描述
CAccelerateDecelerateTransition::m_accelerationRatio 加速所用时间与持续时间之比。
CAccelerateDecelerateTransition::m_decelerationRatio 减速所用时间与持续时间之比。
CAccelerateDecelerateTransition::m_duration 转换的持续时间。
CAccelerateDecelerateTransition::m_finalValue 切换结束时动画变量的值。

注解

在加速减速切换期间,动画变量会在切换期间加快速度,然后减慢速度,以指定值结束。 可通过指定不同的加减速比来控制变量独立加速和减速的速度。 初始速度为零时,加速比是变量加速所用时长的的分数;同样地,减速比也是如此。 如果初始速度为非零值,则表示速度达到零到切换结束之间的时间的分数。 加速比和减速比之和不得超过 1.0。 由于所有转换都会自动清除,因此建议使用运算符 new 来分配转换。 封装的 IUIAnimationTransition COM 对象由 CAnimationController::AnimateGroup 创建,在此之前它是 NULL。 在创建此 COM 对象后更改成员变量不起作用。

继承层次结构

CObject

CBaseTransition

CAccelerateDecelerateTransition

要求

标头: afxanimationcontroller.h

CAccelerateDecelerateTransition::CAccelerateDecelerateTransition

构造转换对象。

CAccelerateDecelerateTransition(
    UI_ANIMATION_SECONDS duration,
    DOUBLE finalValue,
    DOUBLE accelerationRatio = 0.3,
    DOUBLE decelerationRatio = 0.3);

参数

duration
转换的持续时间。

finalValue
切换结束时动画变量的值。

accelerationRatio
加速所用时间与持续时间之比。

decelerationRatio
减速所用时间与持续时间之比。

CAccelerateDecelerateTransition::Create

调用转换库以创建封装的转换 COM 对象。

virtual BOOL Create(
    IUIAnimationTransitionLibrary* pLibrary,
    IUIAnimationTransitionFactory* *\not used*\);

参数

pLibrary
指向 IUIAnimationTransitionLibrary 接口的指针,用于定义标准切换的库。

返回值

如果成功创建转换,为 TRUE;否则为 FALSE。

CAccelerateDecelerateTransition::m_accelerationRatio

加速所用时间与持续时间之比。

DOUBLE m_accelerationRatio;

CAccelerateDecelerateTransition::m_decelerationRatio

减速所用时间与持续时间之比。

DOUBLE m_decelerationRatio;

CAccelerateDecelerateTransition::m_duration

转换的持续时间。

UI_ANIMATION_SECONDS m_duration;

CAccelerateDecelerateTransition::m_finalValue

切换结束时动画变量的值。

DOUBLE m_finalValue;

另请参阅