Spec-Zone.ru › Qt

Класс 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 }

Свойства

  • easing : QEasingCurve
  • endMode : RepeatMode
  • framePositions : QList<float>
  • startMode : RepeatMode
  • target : Qt3DCore::QTransform*
  • targetName : QString

Публичные функции

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

Свойства публичного доступа

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)

Сигналы

void easingChanged(const QEasingCurve &easing)
void endModeChanged(QKeyframeAnimation::RepeatMode endMode)
void framePositionsChanged(const QList<float> &positions)
void startModeChanged(QKeyframeAnimation::RepeatMode startMode)
void targetChanged(Qt3DCore::QTransform *target)
void targetNameChanged(const QString &name)

Подробное описание

Класс 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.2/qt3danimation-qkeyframeanimation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API