Sur cette page

Qt3DCore::QJoint Class

class Qt3DCore::QJoint

Permet de transformer certaines parties des maillages avec skin. En savoir plus...

En-tête : #include <QJoint>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3DCore)
target_link_libraries(mytarget PRIVATE Qt6::3DCore)
qmake : QT += 3dcore
En QML : Joint
Hérite de : Qt3DCore::QNode
Statut : Obsolète

Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Propriétés

Fonctions publiques

QJoint(Qt3DCore::QNode *parent = nullptr)
void addChildJoint(Qt3DCore::QJoint *joint)
QList<Qt3DCore::QJoint *> childJoints() const
QMatrix4x4 inverseBindMatrix() const
QString name() const
void removeChildJoint(Qt3DCore::QJoint *joint)
QQuaternion rotation() const
float rotationX() const
float rotationY() const
float rotationZ() const
QVector3D scale() const
QVector3D translation() const

Emplacements publics

void setInverseBindMatrix(const QMatrix4x4 &inverseBindMatrix)
void setName(const QString &name)
void setRotation(const QQuaternion &rotation)
void setRotationX(float rotationX)
void setRotationY(float rotationY)
void setRotationZ(float rotationZ)
void setScale(const QVector3D &scale)
void setToIdentity()
void setTranslation(const QVector3D &translation)

Signaux

void inverseBindMatrixChanged(const QMatrix4x4 &inverseBindMatrix)
void nameChanged(const QString &name)
void rotationChanged(const QQuaternion &rotation)
void rotationXChanged(float rotationX)
void rotationYChanged(float rotationY)
void rotationZChanged(float rotationZ)
void scaleChanged(const QVector3D &scale)
void translationChanged(const QVector3D &translation)

Description détaillée

Le nœud QJoint sert à créer des squelettes dans le cadre de la prise en charge des maillages skinnés dans Qt 3D. Une articulation peut être transformée à l’aide de ses propriétés d’échelle, de rotation et de translation. Les transformations de tous les sommets du maillage liés à l’articulation seront mises à jour en conséquence.

Documentation des propriétés

inverseBindMatrix : QMatrix4x4

Contient la matrice de liaison inverse de l'articulation. Elle sert à transformer les sommets de l'espace du modèle dans l'espace de cette articulation afin qu'ils puissent ensuite être multipliés par la transformation globale de l'articulation pour effectuer l'opération de skinning.

Fonctions d'accès :

QMatrix4x4 inverseBindMatrix() const
void setInverseBindMatrix(const QMatrix4x4 &inverseBindMatrix)

Signal de notification :

void inverseBindMatrixChanged(const QMatrix4x4 &inverseBindMatrix)

name : QString

Cette propriété contient le nom de l'articulation.

Contient le nom de l'articulation, qui peut être utilisé pour identifier l'articulation au sein d'un squelette.

Fonctions d'accès :

QString name() const
void setName(const QString &name)

Signal de notification :

void nameChanged(const QString &name)

rotation : QQuaternion

Conserve la rotation de l'articulation sous la forme QQuaternion.

Fonctions d'accès :

QQuaternion rotation() const
void setRotation(const QQuaternion &rotation)

Signal de notification :

void rotationChanged(const QQuaternion &rotation)

rotationX : float

Stocke la rotation x de l'articulation sous forme d'angle d'Euler.

Fonctions d'accès :

float rotationX() const
void setRotationX(float rotationX)

Signal de notification :

void rotationXChanged(float rotationX)

rotationY : float

Stocke la rotation en y de l'articulation sous forme d'angle d'Euler.

Fonctions d'accès :

float rotationY() const
void setRotationY(float rotationY)

Signal de notification :

void rotationYChanged(float rotationY)

rotationZ : float

Conserve la rotation en z de l'articulation sous forme d'angle d'Euler.

Fonctions d'accès :

float rotationZ() const
void setRotationZ(float rotationZ)

Signal de notification :

void rotationZChanged(float rotationZ)

scale : QVector3D

Permet de maintenir l'alignement de l'articulation.

Fonctions d'accès :

QVector3D scale() const
void setScale(const QVector3D &scale)

Signal de notification :

void scaleChanged(const QVector3D &scale)

translation : QVector3D

Contient la translation de l'articulation sous la forme QVector3D.

Fonctions d'accès :

QVector3D translation() const
void setTranslation(const QVector3D &translation)

Signal de notification :

void translationChanged(const QVector3D &translation)

Documentation des fonctions membres

[explicit] QJoint::QJoint(Qt3DCore::QNode *parent = nullptr)

Crée un nouvel objet `QJoint` avec ` parent`.

void QJoint::addChildJoint(Qt3DCore::QJoint *joint)

Ajoute « joint » en tant qu’enfant de cette articulation. Si « joint » n’a pas de parent, cette articulation en devient alors le propriétaire. Les articulations enfants se trouvent dans le système de coordonnées de leur articulation parent.

QList<Qt3DCore::QJoint *> QJoint::childJoints() const

Le vecteur des articulations dont cette articulation est l'enfant.

QString QJoint::name() const

Renvoie le nom de l'articulation.

Remarque : fonctiongetter pour la propriété « name ».

Voir aussi setName().

void QJoint::removeChildJoint(Qt3DCore::QJoint *joint)

Supprime l'joint e de la liste des enfants de cette articulation. L'articulation enfant n'est pas détruite.

[slot] void QJoint::setToIdentity()

Définit la matrice de transformation de cette articulation comme étant la matrice identité.

© 2026 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.