Spec-Zone.ru › Qt 6.1

Класс QVertexBlendAnimation

класс Qt3DAnimation::QVertexBlendAnimation

Класс, реализующий анимацию морфинга с вершинным слиянием. Подробнее...

Заголовок: #include <QVertexBlendAnimation>
CMake: find_package(Qt6 COMPONENTS 3danimation REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3danimation)
qmake: QT += 3danimation
С тех пор: Qt 5.9
Инициализируется: VertexBlendAnimation
Наследует: Qt3DAnimation::QAbstractAnimation
  • Список всех членов, включая наследуемые

Свойства

  • interpolator : const float
  • target : Qt3DRender::QGeometryRenderer*
  • targetName : QString
  • targetPositions : QList<float>

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

QVertexBlendAnimation(QObject *parent = nullptr)
void addMorphTarget(Qt3DAnimation::QMorphTarget *target)
float interpolator() const
QList<Qt3DAnimation::QMorphTarget *> morphTargetList()
void removeMorphTarget(Qt3DAnimation::QMorphTarget *target)
void setMorphTargets(const QList<Qt3DAnimation::QMorphTarget *> &targets)
Qt3DRender::QGeometryRenderer * target() const
QString targetName() const
QList<float> targetPositions() const

Открытые слоты

void setTarget(Qt3DRender::QGeometryRenderer *target)
void setTargetName(const QString name)
void setTargetPositions(const QList<float> &targetPositions)

Сигналы

void interpolatorChanged(float interpolator)
void targetChanged(Qt3DRender::QGeometryRenderer *target)
void targetNameChanged(const QString &name)
void targetPositionsChanged(const QList<float> &targetPositions)

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

Класс Qt3DAnimation::QVertexBlendAnimation реализует анимацию морфинга с вершинным слиянием для целевого QGeometryRenderer. QVertexBlendAnimation устанавливает правильные QAttributes от морфинг-таргетов в целевой QGeometryRenderer::geometry и вычисляет интерполятор для текущего положения. В отличие от QMorphingAnimation, где слияние управляется весами слияния, слияние происходит между последовательными морфинг-таргетами. Фактическое слияние между атрибутами должно быть реализовано в материале. Qt3DAnimation::QMorphPhongMaterial реализует материал с поддержкой морфинга для модели освещения Phong. Слияние происходит между 2 атрибутами — 'base' и 'target'. Имена атрибутов base и target берутся из имен морфинг-таргетов, где базовый атрибут сохраняет имеющееся имя, а имя целевого атрибута получает приписку 'Target' к имени. Интерполятор можно задать как QParameter в используемом материале. Все морфинг-таргеты в анимации должны содержать атрибуты с теми же именами, что и в базовой геометрии.

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

[read-only] interpolator : const float

Содержит интерполятор между базовыми и целевыми атрибутами.

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

float interpolator() const

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

void interpolatorChanged(float interpolator)

target : Qt3DRender::QGeometryRenderer*

Содержит целевой QGeometryRenderer, к которому применяется анимация морфинга.

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

Qt3DRender::QGeometryRenderer * target() const
void setTarget(Qt3DRender::QGeometryRenderer *target)

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

void targetChanged(Qt3DRender::QGeometryRenderer *target)

targetName : QString

Содержит имя целевой геометрии. Это свойство по умолчанию упрощает сопоставление целевой геометрии с анимацией морфинга. Имя обычно такое же, как имя родительского объекта целевого QGeometryRenderer, но не обязательно.

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

QString targetName() const
void setTargetName(const QString name)

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

void targetNameChanged(const QString &name)

targetPositions : QList<float>

Содержит значения позиции морфинг-таргета. Каждая позиция в списке определяет положение соответствующего морфинг-таргета с тем же индексом. Значения должны быть в порядке возрастания. Значения могут быть положительными или отрицательными и не имеют предварительно определенной единицы измерения.

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

QList<float> targetPositions() const
void setTargetPositions(const QList<float> &targetPositions)

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

void targetPositionsChanged(const QList<float> &targetPositions)

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

QVertexBlendAnimation::QVertexBlendAnimation(QObject *parent = nullptr)

Создает новый QVertexBlendAnimation с parent.

void QVertexBlendAnimation::addMorphTarget(Qt3DAnimation::QMorphTarget *target)

Добавить новый морфинг-целевой объект в конец анимации.

QList<Qt3DAnimation::QMorphTarget *> QVertexBlendAnimation::morphTargetList()

Возвращает список морфинг-целевых объектов.

void QVertexBlendAnimation::removeMorphTarget(Qt3DAnimation::QMorphTarget *target)

Удалить морфинг-целевой объект из анимации.

void QVertexBlendAnimation::setMorphTargets(const QList<Qt3DAnimation::QMorphTarget *> &targets)

Установить морфинг-целевые объекты для анимации. Старые целевые объекты очищаются.

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

Spec-Zone.ru

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