Класс QKeyframeAnimation
класс Qt3DAnimation::QKeyframeAnimationКласс, реализующий простую анимацию ключевых кадров для QTransform. Подробнее...
| Заголовок: | #include <QKeyframeAnimation> |
| CMake: | find_package(Qt6 COMPONENTS 3danimation REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3danimation) |
| qmake: | QT += 3danimation |
| С тех пор: | Qt 5.9 |
| Инициализируется из: | KeyframeAnimation |
| Наследуется от: | Qt3DAnimation::QAbstractAnimation |
Открытые типы
| перечисление | RepeatMode { None, Constant, Repeat } |
Свойства
|
|
Открытые функции
| 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 |
Открытые слоты
Сигналы
Подробное описание
Класс Qt3DAnimation::QKeyframeAnimation реализует простую анимацию ключевых кадров, которая может быть использована для анимации QTransform. Ключевые кадры состоят из нескольких временных QTransform, которые интерполируются и применяются к целевому QTransform. QEasingCurve используется между ключевыми кадрами для управления интерполятором. RepeatMode может быть задан для случаев, когда позиция, установленная для QKeyframeAnimation, находится ниже или выше значений, определенных в позициях ключевых кадров.
Документация по типам членов
перечисление QKeyframeAnimation::RepeatMode
Это перечисление определяет, как обрабатываются значения позиций вне значений ключевых кадров.
| Константа | Значение | Описание |
|---|---|---|
Qt3DAnimation::QKeyframeAnimation::None |
0 |
Анимация не применяется к целевому преобразованию. |
Qt3DAnimation::QKeyframeAnimation::Constant |
1 |
Используется значение ключевого кадра края. |
Qt3DAnimation::QKeyframeAnimation::Repeat |
2 |
Анимация повторяется. |
Документация свойств
easing : QEasingCurve
Содержит кривую смягчения интерполятора между ключевыми кадрами.
Функции доступа:
| QEasingCurve | easing() const |
| void | setEasing(const QEasingCurve &easing) |
Сигнал уведомления:
| void | easingChanged(const QEasingCurve &easing) |
endMode : RepeatMode
Содержит режим повторения для значений позиции, больших, чем позиция последнего кадра.
Функции доступа:
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | endMode() const |
| void | setEndMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
Сигнал уведомления:
| void | endModeChanged(QKeyframeAnimation::RepeatMode endMode) |
framePositions : QList<float>
Содержит позиции ключевых кадров. Каждая позиция в списке определяет позицию соответствующего ключевого кадра с тем же индексом. Значения должны быть в порядке возрастания. Значения могут быть положительными или отрицательными и не имеют предопределенной единицы измерения.
Функции доступа:
| QList<float> | framePositions() const |
| void | setFramePositions(const QList<float> &positions) |
Сигнал уведомления:
| void | framePositionsChanged(const QList<float> &positions) |
startMode : RepeatMode
Содержит режим повторения для значений позиции, меньших, чем позиция первого кадра.
Функции доступа:
| Qt3DAnimation::QKeyframeAnimation::RepeatMode | startMode() const |
| void | setStartMode(Qt3DAnimation::QKeyframeAnimation::RepeatMode mode) |
Сигнал уведомления:
| void | startModeChanged(QKeyframeAnimation::RepeatMode startMode) |
target : Qt3DCore::QTransform*
Содержит целевой QTransform, к которому применяется анимация.
Функции доступа:
| Qt3DCore::QTransform * | target() const |
| void | setTarget(Qt3DCore::QTransform *target) |
Сигнал уведомления:
| void | targetChanged(Qt3DCore::QTransform *target) |
targetName : QString
Содержит имя целевого преобразования. Это удобное свойство, которое упрощает сопоставление целевого преобразования с анимацией ключевых кадров. Имя обычно совпадает с именем родительского объекта целевого преобразования, но может отличаться.
Функции доступа:
| QString | targetName() const |
| void | setTargetName(const QString &name) |
Сигнал уведомления:
| void | targetNameChanged(const QString &name) |
Документация функций-членов
QKeyframeAnimation::QKeyframeAnimation(QObject *parent = nullptr)
Создаёт QKeyframeAnimation с parent.
void QKeyframeAnimation::addKeyframe(Qt3DCore::QTransform *keyframe)
Добавляет новый keyframe в конец анимации. QTransform можно добавлять в анимацию несколько раз.
QList<Qt3DCore::QTransform *> QKeyframeAnimation::keyframeList() const
Возвращает список ключевых кадров.
void QKeyframeAnimation::removeKeyframe(Qt3DCore::QTransform *keyframe)
Удаляет keyframe из анимации. Если один и тот же QTransform задан как ключевой кадр несколько раз, все такие вхождения удаляются.
void QKeyframeAnimation::setKeyframes(const QList<Qt3DCore::QTransform *> &keyframes)
Устанавливает keyframes анимации. Старые ключевые кадры очищаются.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qt3danimation-qkeyframeanimation.html