Qt3DAnimation::QKeyframeAnimation Class
class Qt3DAnimation::QKeyframeAnimationUne classe implémentant une animation simple par images clés sur QTransform. En savoir plus...
| En-tête : | #include <qkeyframeanimation.h> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3danimation) target_link_libraries(mytarget PRIVATE Qt6::3danimation) |
| qmake : | QT += 3danimation |
| En QML : | KeyframeAnimation |
| Hérite de : | Qt3DAnimation::QAbstractAnimation |
| Statut : | Aperçu technologique |
Cette classe est en avant-première technologique et est susceptible d'être modifiée.
Types publics
| enum | RepeatMode { None, Constant, Repeat } |
Propriétés
|
|
Fonctions publiques
| QKeyframeAnimation(QObject *parent = nullptr) | |
| void | addKeyframe(Qt3DCore::QTransform *keyframe) |
| QEasingCurve | easing() const |
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | endMode() const |
| QList<float> | framePositions() const |
| QList<Qt3DCore::QTransform *> | keyframeList() const |
| void | removeKeyframe(Qt3DCore::QTransform *keyframe) |
| void | setKeyframes(const QList<Qt3DCore::QTransform *> &keyframes) |
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | startMode() const |
| Qt3DCore::QTransform * | target() const |
| QString | targetName() const |
Emplacements publics
| void | setEasing(const QEasingCurve &easing) |
| void | setEndMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
| void | setFramePositions(const QList<float> &positions) |
| void | setStartMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
| void | setTarget(Qt3DCore::QTransform *target) |
| void | setTargetName(const QString &name) |
Signaux
| void | easingChanged(const QEasingCurve &easing) |
| void | endModeChanged(Qt3DAnimation::QKeyframeAnimation::RepeatMode endMode) |
| void | framePositionsChanged(const QList<float> &positions) |
| void | startModeChanged(Qt3DAnimation::QKeyframeAnimation::RepeatMode startMode) |
| void | targetChanged(Qt3DCore::QTransform *target) |
| void | targetNameChanged(const QString &name) |
Description détaillée
Une classe « Qt3DAnimation::QKeyframeAnimation » implémente une animation simple par images clés pouvant être utilisée pour animer QTransform. Les images clés se composent de plusieurs QTransforms chronométrées, qui sont interpolées et appliquées à l’ QTransform cible. La méthode ` QEasingCurve ` est utilisée entre les images clés pour contrôler l’interpolateur. La méthode ` RepeatMode ` peut être définie lorsque la position définie pour la `QKeyframeAnimation` est inférieure ou supérieure aux valeurs définies dans les positions des images clés.
Documentation sur les types de membres
enum QKeyframeAnimation::RepeatMode
Cette liste précise comment sont traitées les valeurs de position situées en dehors des valeurs des images clés.
| Constante | Valeur | Description |
|---|---|---|
Qt3DAnimation::QKeyframeAnimation::None | 0 | L’animation n’est pas appliquée à la transformation cible. |
Qt3DAnimation::QKeyframeAnimation::Constant | 1 | La valeur de l'image clé de bord est utilisée. |
Qt3DAnimation::QKeyframeAnimation::Repeat | 2 | L'animation est répétée. |
Documentation sur les propriétés
easing : QEasingCurve
Contient la courbe d'atténuation de l'interpolateur entre les images clés.
Fonctions d'accès :
| QEasingCurve | easing() const |
| void | setEasing(const QEasingCurve &easing) |
Signal de notification :
| void | easingChanged(const QEasingCurve &easing) |
endMode : RepeatMode
Conserve le mode de répétition pour les valeurs de position supérieures à la position de la dernière image.
Fonctions d'accès :
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | endMode() const |
| void | setEndMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
Signal de notification :
| void | endModeChanged(Qt3DAnimation::QKeyframeAnimation::RepeatMode endMode) |
framePositions : QList<float>
Contient les positions des images clés. Chaque position de la liste spécifie la position de l'image clé correspondante portant le même index. Les valeurs doivent être classées par ordre croissant. Elles peuvent être positives ou négatives et n'ont pas d'unité prédéfinie.
Fonctions d'accès :
| QList<float> | framePositions() const |
| void | setFramePositions(const QList<float> &positions) |
Signal de notification :
| void | framePositionsChanged(const QList<float> &positions) |
startMode : RepeatMode
Définit le mode de répétition pour les valeurs de position inférieures à la position de la première image.
Fonctions d'accès :
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | startMode() const |
| void | setStartMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
Signal de notification :
| void | startModeChanged(Qt3DAnimation::QKeyframeAnimation::RepeatMode startMode) |
target : Qt3DCore::QTransform*
Contient l'QTransform -cible à laquelle l'animation est appliquée.
Fonctions d'accès :
| Qt3DCore::QTransform * | target() const |
| void | setTarget(Qt3DCore::QTransform *target) |
Signal de notification :
| void | targetChanged(Qt3DCore::QTransform *target) |
targetName : QString
Contient le nom de la transformation cible. Il s'agit d'une propriété pratique qui facilite l'association de la transformation cible à l'animation par images clés. Le nom correspond généralement à celui de l'entité parente de la transformation cible, mais ce n'est pas obligatoire.
Fonctions d'accès :
| QString | targetName() const |
| void | setTargetName(const QString &name) |
Signal de notification :
| void | targetNameChanged(const QString &name) |
Documentation des fonctions membres
[explicit] QKeyframeAnimation::QKeyframeAnimation(QObject *parent = nullptr)
Crée un objet `QKeyframeAnimation` à l'aide de ` parent`.
void QKeyframeAnimation::addKeyframe(Qt3DCore::QTransform *keyframe)
Ajoute une nouvelle « keyframe » à la fin de l'animation. L'« QTransform » peut être ajoutée plusieurs fois à l'animation.
QList<Qt3DCore::QTransform *> QKeyframeAnimation::keyframeList() const
Renvoie la liste des images clés.
void QKeyframeAnimation::removeKeyframe(Qt3DCore::QTransform *keyframe)
Supprime une « keyframe » de l'animation. Si la même « QTransform » est définie plusieurs fois comme image clé, toutes les occurrences sont supprimées.
void QKeyframeAnimation::setKeyframes(const QList<Qt3DCore::QTransform *> &keyframes)
Définit l'keyframes e de l'animation. Les anciennes images clés sont effacées.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.