QJoint Class
class Qt3DCore::QJointVerwendet, um Teile von gehäuteten Meshes zu transformieren. Mehr...
Kopfzeile: | #include <QJoint> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3DCore) target_link_libraries(mytarget PRIVATE Qt6::3DCore) |
qmake: | QT += 3dcore |
In QML: | Joint |
Vererbt: | Qt3DCore::QNode |
Status: | Veraltet |
Eigenschaften
|
|
Öffentliche Funktionen
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 |
Öffentliche Slots
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) |
Signale
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) |
Detaillierte Beschreibung
Der QJoint-Knoten wird verwendet, um Skelette als Teil der Skinned-Mesh-Unterstützung in Qt 3D zu erstellen. Ein Gelenk kann mit Hilfe seiner Skalierungs-, Rotations- und Translationseigenschaften transformiert werden. Bei allen Mesh-Eckpunkten, die an das Gelenk gebunden sind, werden die Transformationen entsprechend aktualisiert.
Dokumentation der Eigenschaften
inverseBindMatrix : QMatrix4x4
Enthält die inverse Bindungsmatrix des Gelenks. Diese wird verwendet, um Eckpunkte aus dem Modellraum in den Raum dieses Gelenks zu transformieren, so dass sie anschließend mit der globalen Transformation des Gelenks multipliziert werden können, um die Skinning-Operation durchzuführen.
Zugriffsfunktionen:
QMatrix4x4 | inverseBindMatrix() const |
void | setInverseBindMatrix(const QMatrix4x4 &inverseBindMatrix) |
Melder-Signal:
void | inverseBindMatrixChanged(const QMatrix4x4 &inverseBindMatrix) |
rotation : QQuaternion
Hält die Drehung des Gelenks als QQuaternion fest.
Zugriffsfunktionen:
QQuaternion | rotation() const |
void | setRotation(const QQuaternion &rotation) |
Anzeigesignal:
void | rotationChanged(const QQuaternion &rotation) |
rotationX : float
Enthält die x-Drehung des Gelenks als Euler-Winkel.
Zugriffsfunktionen:
float | rotationX() const |
void | setRotationX(float rotationX) |
Melder-Signal:
void | rotationXChanged(float rotationX) |
rotationY : float
Enthält die y-Drehung des Gelenks in Form eines Euler-Winkels.
Zugriffsfunktionen:
float | rotationY() const |
void | setRotationY(float rotationY) |
Melder-Signal:
void | rotationYChanged(float rotationY) |
rotationZ : float
Enthält die z-Drehung des Gelenks als Euler-Winkel.
Zugriffsfunktionen:
float | rotationZ() const |
void | setRotationZ(float rotationZ) |
Melder-Signal:
void | rotationZChanged(float rotationZ) |
scale : QVector3D
Enthält den Maßstab der Verbindung.
Zugriffsfunktionen:
QVector3D | scale() const |
void | setScale(const QVector3D &scale) |
Melder-Signal:
void | scaleChanged(const QVector3D &scale) |
translation : QVector3D
Hält die Übersetzung des Gelenks als QVector3D fest.
Zugriffsfunktionen:
QVector3D | translation() const |
void | setTranslation(const QVector3D &translation) |
Melder-Signal:
void | translationChanged(const QVector3D &translation) |
Member Function Dokumentation
[explicit]
QJoint::QJoint(Qt3DCore::QNode *parent = nullptr)
Konstruiert einen neuen QJoint mit parent.
void QJoint::addChildJoint(Qt3DCore::QJoint *joint)
Fügt joint als Kind dieser Verbindung hinzu. Wenn joint kein übergeordnetes Gelenk hat, übernimmt dieses Gelenk das Eigentum daran. Untergeordnete Verbindungen befinden sich im Koordinatensystem ihrer übergeordneten Verbindung.
QList<Qt3DCore::QJoint *> QJoint::childJoints() const
Der Vektor der Gelenke, die dieses Gelenk als Kinder hat.
QString QJoint::name() const
Gibt den Namen der Verbindung zurück.
Hinweis: Getter-Funktion für die Eigenschaft name.
Siehe auch setName().
void QJoint::removeChildJoint(Qt3DCore::QJoint *joint)
Entfernt joint aus der Liste der Kinder dieser Verbindung. Das untergeordnete Gelenk wird nicht zerstört.
[slot]
void QJoint::setToIdentity()
Setzt die Transformationsmatrix für dieses Gelenk auf die Identitätsmatrix.
© 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.