CCustomInterpolator 类

实现基本插值程序。

语法

class CCustomInterpolator;

成员

公共构造函数

名称 描述
CCustomInterpolator::CCustomInterpolator 已重载。 构造自定义内插器对象,并将持续时间和速度初始化为指定值。

公共方法

名称 描述
CCustomInterpolator::GetDependencies 获取内插器的依赖项。
CCustomInterpolator::GetDuration 获取内插器的持续时间。
CCustomInterpolator::GetFinalValue 获取内插器所指向的最终值。
CCustomInterpolator::Init 初始化持续时间和最终值。
CCustomInterpolator::InterpolateValue 在给定偏移处内插值。
CCustomInterpolator::InterpolateVelocity 在给定偏移处内插速度
CCustomInterpolator::SetDuration 设置内插器的持续时间。
CCustomInterpolator::SetInitialValueAndVelocity 设置内插器的初始值和速度。

受保护的数据成员

名称 描述
CCustomInterpolator::m_currentValue 内插值。
CCustomInterpolator::m_currentVelocity 内插速度。
CCustomInterpolator::m_duration 转换的持续时间。
CCustomInterpolator::m_finalValue 转换结束时变量的最终值。
CCustomInterpolator::m_initialValue 转换开始时变量的值。
CCustomInterpolator::m_initialVelocity 转换开始时变量的速度。

注解

从 CCustomInterpolator 派生类并重写所有必要的方法,以实现自定义内插算法。 指向此类的指针应作为参数传递给 CCustomTransition。

继承层次结构

CCustomInterpolator

要求

标头: afxanimationcontroller.h

CCustomInterpolator::CCustomInterpolator

构造自定义内插器对象,并将所有值设置为默认值 0。

CCustomInterpolator();

CCustomInterpolator(
    UI_ANIMATION_SECONDS duration,
    DOUBLE finalValue);

参数

duration
转换的持续时间。

finalValue

备注

稍后在代码中使用 CCustomInterpolator::Init 初始化持续时间和最终值。

CCustomInterpolator::GetDependencies

获取内插器的依赖项。

virtual BOOL GetDependencies(
    UI_ANIMATION_DEPENDENCIES* initialValueDependencies,
    UI_ANIMATION_DEPENDENCIES* initialVelocityDependencies,
    UI_ANIMATION_DEPENDENCIES* durationDependencies);

参数

initialValueDependencies
输出。 内插器的各个方面,具体取决于传递给 SetInitialValueAndVelocity 的初始值。

initialVelocityDependencies
输出。 内插器的各个方面,具体取决于传递给 SetInitialValueAndVelocity 的初始速度。

durationDependencies
输出。 内插器的各个方面,具体取决于传递给 SetDuration 的持续时间。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::GetDuration

获取内插器的持续时间。

virtual BOOL GetDuration(UI_ANIMATION_SECONDS* duration);

参数

duration
输出。 转换的持续时间(以秒为单位)。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::GetFinalValue

获取内插器所指向的最终值。

virtual BOOL GetFinalValue(DOUBLE* value);

参数

value
输出。 转换结束时变量的最终值。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::Init

初始化持续时间和最终值。

void Init(
    UI_ANIMATION_SECONDS duration,
    DOUBLE finalValue);

参数

duration
转换的持续时间。

finalValue
转换结束时变量的最终值。

CCustomInterpolator::InterpolateValue

在给定偏移处内插值。

virtual BOOL InterpolateValue(
    UI_ANIMATION_SECONDS */,
    DOUBLE* value);

参数

value
输出。 内插值。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::InterpolateVelocity

在给定偏移处内插速度

virtual BOOL InterpolateVelocity(
    UI_ANIMATION_SECONDS */,
    DOUBLE* velocity);

参数

velocity
输出。 变量在偏移处的速度。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::m_currentValue

内插值。

DOUBLE m_currentValue;

CCustomInterpolator::m_currentVelocity

内插速度。

DOUBLE m_currentVelocity;

CCustomInterpolator::m_duration

转换的持续时间。

UI_ANIMATION_SECONDS m_duration;

CCustomInterpolator::m_finalValue

转换结束时变量的最终值。

DOUBLE m_finalValue;

CCustomInterpolator::m_initialValue

转换开始时变量的值。

DOUBLE m_initialValue;

CCustomInterpolator::m_initialVelocity

转换开始时变量的速度。

DOUBLE m_initialVelocity;

CCustomInterpolator::SetDuration

设置内插器的持续时间。

virtual BOOL SetDuration(UI_ANIMATION_SECONDS duration);

参数

duration
转换的持续时间。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

CCustomInterpolator::SetInitialValueAndVelocity

设置内插器的初始值和速度。

virtual BOOL SetInitialValueAndVelocity(
    DOUBLE initialValue,
    DOUBLE initialVelocity);

参数

initialValue
转换开始时变量的值。

initialVelocity
转换开始时变量的速度。

返回值

基本实现始终返回 TRUE。 如果要使事件失败,请从替代的实现返回 FALSE。

另请参阅