QAnimationController Class
(Qt3DAnimation::QAnimationController)A controller class for animations 更多...
头文件: | #include <QAnimationController> |
qmake: | QT += 3danimation |
开始支持版本: | Qt 5.9 |
Instantiated By: | AnimationController |
基类: | QObject |
属性
|
|
- 1 个属性继承自 QObject
公有函数
QAnimationController(QObject *parent = nullptr) | |
int | activeAnimationGroup() const |
void | addAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroup) |
QVector<Qt3DAnimation::QAnimationGroup *> | animationGroupList() |
Qt3DCore::QEntity * | entity() const |
int | getAnimationIndex(const QString &name) const |
Qt3DAnimation::QAnimationGroup * | getGroup(int index) const |
float | position() const |
float | positionOffset() const |
float | positionScale() const |
bool | recursive() const |
void | removeAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroup) |
void | setAnimationGroups(const QVector<Qt3DAnimation::QAnimationGroup *> &animationGroups) |
- 32 个公有函数继承自 QObject
公有槽函数
void | setActiveAnimationGroup(int index) |
void | setEntity(Qt3DCore::QEntity *entity) |
void | setPosition(float position) |
void | setPositionOffset(float offset) |
void | setPositionScale(float scale) |
void | setRecursive(bool recursive) |
- 1 个公有槽函数继承自 QObject
信号
void | activeAnimationGroupChanged(int index) |
void | entityChanged(Qt3DCore::QEntity *entity) |
void | positionChanged(float position) |
void | positionOffsetChanged(float offset) |
void | positionScaleChanged(float scale) |
void | recursiveChanged(bool recursive) |
- 2 个信号继承自 QObject
其他继承的成员
详细描述
A controller class for animations
Qt3DAnimation::QAnimationController class controls the selection and playback of animations. The class can be used to find all animations from Qt3DCore::QEntity tree and create QAnimationGroups from the animations with the same name. The user can select which animation group is currently controlled with the animation controller by setting the active animation. The animation position is then propagated to that group after scaling and offsetting the provided position value with the positionScale and positionOffset values.
Note: that the animation controller doesn't have internal timer, but instead the user is responsible for updating the position property in timely manner.
属性
activeAnimationGroup : int
Holds the currectly active animation group.
访问函数:
int | activeAnimationGroup() const |
void | setActiveAnimationGroup(int index) |
Notifier signal:
void | activeAnimationGroupChanged(int index) |
entity : Qt3DCore::QEntity *
Holds the entity animations are gathered and grouped from. If the controller already holds animations, they are cleared.
访问函数:
Qt3DCore::QEntity * | entity() const |
void | setEntity(Qt3DCore::QEntity *entity) |
Notifier signal:
void | entityChanged(Qt3DCore::QEntity *entity) |
position : float
Holds the current position of the animation. When the position is set, it is scaled and offset with positionScale/positionOffset and propagated to the active animation group.
访问函数:
float | position() const |
void | setPosition(float position) |
Notifier signal:
void | positionChanged(float position) |
positionOffset : float
Holds the position offset of the animation.
访问函数:
float | positionOffset() const |
void | setPositionOffset(float offset) |
Notifier signal:
void | positionOffsetChanged(float offset) |
positionScale : float
Holds the position scale of the animation.
访问函数:
float | positionScale() const |
void | setPositionScale(float scale) |
Notifier signal:
void | positionScaleChanged(float scale) |
recursive : bool
Holds whether the recursively search the entity tree when gathering animations from the entity. If set to true, the animations are searched also from the child entities of the entity. If set to false, only the entity passed to the controller is searched.
访问函数:
bool | recursive() const |
void | setRecursive(bool recursive) |
Notifier signal:
void | recursiveChanged(bool recursive) |
成员函数
QAnimationController::QAnimationController(QObject *parent = nullptr)
Constructs a new QAnimationController with parent.
void QAnimationController::addAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroup)
Adds the given animationGroup to the controller.
QVector<Qt3DAnimation::QAnimationGroup *> QAnimationController::animationGroupList()
Returns the list of animation groups the conroller is currently holding.
int QAnimationController::getAnimationIndex(const QString &name) const
Returns the index of the animation with name. Returns -1 if no AnimationGroup with the given name is found.
Qt3DAnimation::QAnimationGroup *QAnimationController::getGroup(int index) const
Returns the AnimationGroup with the given index.
void QAnimationController::removeAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroup)
Removes the given animationGroup from the controller.
void QAnimationController::setAnimationGroups(const QVector<Qt3DAnimation::QAnimationGroup *> &animationGroups)
Sets the animationGroups for the controller. Old groups are cleared.