Класс QVertexBlendAnimation
(Qt3DAnimation::QVertexBlendAnimation)Класс, реализующий анимацию морфинга с вершинным слиянием Подробнее...
| Заголовок: | #include <QVertexBlendAnimation> |
| qmake: | QT += 3danimation |
| С момента: | Qt 5.9 |
| Инициализируется: | VertexBlendAnimation |
| Наследует: | Qt3DAnimation::QAbstractAnimation |
Свойства
- interpolator : const float
- target : Qt3DRender::QGeometryRenderer *
- targetName : QString
- targetPositions : QVector<float>
- 4 свойства, унаследованные от Qt3DAnimation::QAbstractAnimation
- 1 свойство, унаследованное от QObject
Открытые функции
| QVertexBlendAnimation(QObject *parent = nullptr) | |
| void | addMorphTarget(Qt3DAnimation::QMorphTarget *target) |
| float | interpolator() const |
| QVector<Qt3DAnimation::QMorphTarget *> | morphTargetList() |
| void | removeMorphTarget(Qt3DAnimation::QMorphTarget *target) |
| void | setMorphTargets(const QVector<Qt3DAnimation::QMorphTarget *> &targets) |
| Qt3DRender::QGeometryRenderer * | target() const |
| QString | targetName() const |
| QVector<float> | targetPositions() const |
- 4 открытые функции, унаследованные от Qt3DAnimation::QAbstractAnimation
- 32 открытые функции, унаследованные от QObject
Открытые слоты
| void | setTarget(Qt3DRender::QGeometryRenderer *target) |
| void | setTargetName(const QString name) |
| void | setTargetPositions(const QVector<float> &targetPositions) |
- 2 открытых слота, унаследованных от Qt3DAnimation::QAbstractAnimation
- 1 открытый слот, унаследованный от QObject
Сигналы
| void | interpolatorChanged(float interpolator) |
| void | targetChanged(Qt3DRender::QGeometryRenderer *target) |
| void | targetNameChanged(const QString &name) |
| void | targetPositionsChanged(const QVector<float> &targetPositions) |
- 3 сигнала, унаследованные от Qt3DAnimation::QAbstractAnimation
- 2 сигнала, унаследованные от QObject
Дополнительные наследуемые члены
- 11 статических открытых членов, унаследованных от QObject
- 1 защищённая функция, унаследованная от Qt3DAnimation::QAbstractAnimation
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс, реализующий анимацию морфинга с вершинным слиянием
Класс Qt3DAnimation::QVertexBlendAnimation реализует анимацию морфинга с вершинным слиянием для целевого объекта QGeometryRenderer. QVertexBlendAnimation устанавливает соответствующие QAttributes из целевых объектов морфинга в геометрию целевого QGeometryRenderer::geometry и рассчитывает интерполятор для текущего положения. В отличие от QMorphingAnimation, где слияние контролируется весами слияния, слияние происходит между последовательными целевыми объектами морфинга. Фактическое слияние атрибутов должно быть реализовано в материале. Qt3DAnimation::QMorphPhongMaterial реализует материал с поддержкой морфинга для модели освещения Phong. Слияние происходит между двумя атрибутами — 'base' и 'target'. Названия атрибутов base и target берутся из имен целевых объектов морфинга, где атрибут base сохраняет своё первоначальное имя, а имя атрибута target получает приставку 'Target'. Интерполятор может быть задан как QParameter для используемого материала. Все целевые объекты морфинга в анимации должны содержать атрибуты с такими же именами, что и в базовой геометрии.
Документация свойств
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 : QVector<float>
Содержит значения позиций целевой точки морфинга. Каждая позиция в списке определяет положение соответствующей целевой точки морфинга с тем же индексом. Значения должны быть в порядке возрастания. Значения могут быть положительными или отрицательными и не имеют предопределённой единицы измерения.
Функции доступа:
| QVector<float> | targetPositions() const |
| void | setTargetPositions(const QVector<float> &targetPositions) |
Сигнал уведомления:
| void | targetPositionsChanged(const QVector<float> &targetPositions) |
Документация функций-членов
QVertexBlendAnimation::QVertexBlendAnimation(QObject *parent = nullptr)
Создаёт новый QVertexBlendAnimation с parent.
void QVertexBlendAnimation::addMorphTarget(Qt3DAnimation::QMorphTarget *target)
Добавляет новую целевую точку морфинга target в конец анимации.
QVector<Qt3DAnimation::QMorphTarget *> QVertexBlendAnimation::morphTargetList()
Возвращает список целевых точек морфинга.
void QVertexBlendAnimation::removeMorphTarget(Qt3DAnimation::QMorphTarget *target)
Удаляет целевую точку морфинга target из анимации.
void QVertexBlendAnimation::setMorphTargets(const QVector<Qt3DAnimation::QMorphTarget *> &targets)
Устанавливает целевые точки морфинга targets для анимации. Старые целевые точки очищаются.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qt3danimation-qvertexblendanimation.html