Spec-Zone.ru › Qt 6.0

Класс QAbstractAnimationClip

класс Qt3DAnimation::QAbstractAnimationClip

QAbstractAnimationClip — базовый класс для типов, предоставляющих данные анимации ключевых кадров. Подробнее...

Заголовок: #include <QAbstractAnimationClip>
CMake: find_package(Qt6 COMPONENTS 3danimation REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3danimation)
qmake: QT += 3danimation
С момента: Qt 5.9
Наследуется от: Qt3DCore::QNode
Наследует:

Qt3DAnimation::QAnimationClip и Qt3DAnimation::QAnimationClipLoader

  • Список всех членов, включая унаследованные

Свойства

  • duration : const float

Открытые функции

virtual ~QAbstractAnimationClip()
float duration() const

Сигналы

void durationChanged(float duration)

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

Для использования фреймворка анимации ключевых кадров в модуле Qt 3D Animation компоненту аниматора необходимо предоставить данные анимации ключевых кадров. Данные анимации предоставляются одним из конкретных подклассов QAbstractAnimationClip:

  • Qt3DAnimation::QAnimationClip
  • Qt3DAnimation::QAnimationClipLoader

QAnimationClip следует использовать, когда вы хотите создать данные анимации программно в своем приложении. Фактические данные устанавливаются с помощью значения типа QAnimationClipData.

Если вы загружаете данные анимации из файла, например, созданные художником, используйте класс QAnimationClipLoader и установите его source свойство.

После заполнения данных анимационного клипа с помощью указанных выше методов, свойство duration (длительность), доступное только для чтения, будет обновлено бэкендом Qt 3D Animation.

Типичное использование анимационных клипов:

auto animator = new QClipAnimator();
auto clip = new QAnimationClipLoader();
clip->setSource(QUrl::fromLocalFile("bounce.json"));
animator->setClip(clip);
animator->setChannelMapper(...);
animator->setRunning(true);

Анимационные клипы также используются в качестве значений листовых узлов в деревьях смешивания анимации:

// Create leaf nodes of blend tree
auto slideClipValue = new QClipBlendValue(
    new QAnimationClipLoader(QUrl::fromLocalFile("slide.json")));
auto bounceClipValue = new QClipBlendValue(
    new QAnimationClipLoader(QUrl::fromLocalFile("bounce.json")));

// Create blend tree inner node
auto additiveNode = new QAdditiveClipBlend();
additiveNode->setBaseClip(slideClipValue);
additiveNode->setAdditiveClip(bounceClipValue);
additiveNode->setAdditiveFactor(0.5f);

// Run the animator
auto animator = new QBlendedClipAnimator();
animator->setBlendTree(additiveNode);
animator->setChannelMapper(...);
animator->setRunning(true);

См. такжеQt3DAnimation::QAnimationClip и Qt3DAnimation::QAnimationClipLoader.

Документация по свойствам

[read-only] duration : const float

Содержит длительность анимационного клипа в секундах. Обновляется после предоставления данных анимации Qt 3D с помощью одного из конкретных подклассов.

Функции доступа:

float duration() const

Сигнал уведомления:

void durationChanged(float duration)

Документация по функциям-членам

[virtual] QAbstractAnimationClip::~QAbstractAnimationClip()

Уничтожает этот анимационный клип.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qt3danimation-qabstractanimationclip.html

Spec-Zone.ru

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