QVertexBlendAnimation Class

class Qt3DAnimation::QVertexBlendAnimation

頂点ブレンドモーフィングアニメーションを実装したクラス。さらに...

ヘッダー #include <QVertexBlendAnimation>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3danimation)
target_link_libraries(mytarget PRIVATE Qt6::3danimation)
qmake QT += 3danimation
QML で VertexBlendAnimation
を継承しています: Qt3DAnimation::QAbstractAnimation
ステータス非推奨

プロパティ

パブリック機能

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 は、morph targets からターゲットQGeometryRenderer::geometry に正しいQAttributes を設定し、現在の位置の補間子を計算します。ブレンドがブレンドウェイトで制御されるQMorphingAnimation とは異なり、ブレンドは連続したモーフターゲット間で発生します。アトリビュート間の実際のブレンドは、マテリアルで実装する必要があります。Qt3DAnimation::QMorphPhongMaterial は、フォンの照明モデルのためのモーフィングサポートを持つマテリアルを実装しています。ブレンドは、2つの属性 - 'base' と 'target' - の間で行われます。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)

メンバ関数 ドキュメント

[explicit] QVertexBlendAnimation::QVertexBlendAnimation(QObject *parent = nullptr)

parent で新しい QVertexBlendAnimation を構築する。

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

アニメーションの最後に新しいモーフtarget を追加する。

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

モーフのターゲットリストを返す。

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

アニメーションからモーフtarget を取り除く。

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

モーフtargets をアニメーションに設定する。古いターゲットはクリアされる。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.