Egrome
 
载入中...
搜索中...
未找到
Animation< T > 模板类 参考

动画插值类 更多...

#include <Animation.hpp>

struct  Args
 

Public 成员函数

 Animation ()
 默认构造函数
 
 Animation (Args args)
 
bool isRunning () const
 动画是否正在运行
 
void set (T startValue, T endValue, std::chrono::milliseconds time)
 设置动画参数
 
void set (std::function< T(T, T, double)> valueComputer)
 设置动画参数
 
void start ()
 使动画开始运行,该函数会重置当前动画进度
 
void stop ()
 使动画停止运行
 
void run (bool is_reverse=false)
 使动画开始运行,该函数不会重置当前动画进度
 
void reset ()
 重置动画状态
 
value ()
 获取动画当前值
 
 operator T ()
 与Animation<T>::value()相同,用于方便调用
 

Public 属性

Signal< void()> finished
 
Signal< void()> started
 
Signal< void()> stopted
 
Signal< void()> continued
 

Protected 属性

std::function< T(T start, T end, double t)> valueComputer_
 

详细描述

template<typename T>
class Animation< T >

动画插值类

该类用于实现动画效果,支持插值计算函数的自定义,并提供信号槽机制用于通知动画状态变化

模板参数
T被插值的值类型

构造及析构函数说明

◆ Animation()

template<typename T >
Animation< T >::Animation ( )
inline

默认构造函数

构造函数默认使用线性插值函数,该类型应确保提供了对于operator+(T, T),operator-(T, T),operator*(T, double)的支持,以及该类可以被零初始化

成员函数说明

◆ isRunning()

template<typename T >
bool Animation< T >::isRunning ( ) const
inline

动画是否正在运行

返回
true 正在运行,false 停止

◆ operator T()

template<typename T >
Animation< T >::operator T ( )
inline

与Animation<T>::value()相同,用于方便调用

返回
当前值

◆ run()

template<typename T >
void Animation< T >::run ( bool is_reverse = false)
inline

使动画开始运行,该函数不会重置当前动画进度

参数
is_reverse是否倒放

◆ set() [1/2]

template<typename T >
void Animation< T >::set ( std::function< T(T, T, double)> valueComputer)
inline

设置动画参数

参数
valueComputer插值计算函数

◆ set() [2/2]

template<typename T >
void Animation< T >::set ( T startValue,
T endValue,
std::chrono::milliseconds time )
inline

设置动画参数

参数
startValue起始值
endValue终止值
time时长

◆ value()

template<typename T >
T Animation< T >::value ( )
inline

获取动画当前值

返回
当前值

该类的文档由以下文件生成: