Spec-Zone.ru › Qt 6.1

Класс QAbstractAnimationClip

class 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.1/qt3danimation-qabstractanimationclip.html

Spec-Zone.ru

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