Auf dieser Seite

QRotationReading Class

Die Klasse „QRotationReading“ repräsentiert einen Messwert des Rotationssensors. Mehr...

Header: #include <QRotationReading>
CMake: find_package(Qt6 REQUIRED COMPONENTS Sensors)
target_link_libraries(mytarget PRIVATE Qt6::Sensors)
qmake: QT += sensors
Erbt von: QSensorReading

Eigenschaften

  • x : qreal
  • y : qreal
  • z : qreal

Öffentliche Funktionen

void setFromEuler(qreal x, qreal y, qreal z)
qreal x() const
qreal y() const
qreal z() const

Detaillierte Beschreibung

QRotationReading-Einheiten

Die Rotationsmesswerte umfassen drei Winkel in Grad, die die Ausrichtung des Geräts im dreidimensionalen Raum definieren. Diese Winkel entsprechen in etwa Gieren, Neigen und Rollen, werden jedoch ausschließlich anhand der Rechtshanddrehung mit Achsen definiert, die durch das kartesische Rechtshand-Koordinatensystem festgelegt sind.

Das Gerät wurde relativ zu den x-, y- und z-Achsen gedreht, wobei die gedrehten y2- und y1-Achsen sowie der Drehwinkel markiert sind

Die drei Winkel werden in der folgenden Reihenfolge auf das Gerät angewendet.

  • Rechtshändige Drehung um die z-Achse [-180, 180]. Ausgehend von der y-Achse und in Gegenuhrzeigerrichtung.
  • Rechtshändige Drehung um die x-Achse [-90, 90]. Ausgehend von der neuen (einmal gedrehten) y-Achse und in Richtung der z-Achse.
  • Rechtshändige Drehung um die y-Achse (-180, 180]. Ausgehend von der neuen (zweimal gedrehten) z-Achse und in Richtung der x-Achse.

Hier ist eine Visualisierung, die die Reihenfolge zeigt, in der die Winkel angewendet werden.

Der Nullpunkt für den z-Winkel ist als feste, externe Größe definiert und gerätespezifisch. Obwohl üblicherweise der magnetische Nordpol als Bezugspunkt verwendet wird, muss dies nicht zwingend der Fall sein. Versuchen Sie nicht, Werte für den z-Winkel zwischen verschiedenen Geräten oder sogar auf demselben Gerät zu vergleichen, wenn sich dieses über eine beträchtliche Strecke bewegt hat.

Wenn das Gerät keine feste, externe Referenz erkennen kann, beträgt der z-Winkel immer 0 und die Eigenschaft „ QRotationSensor::hasZ “ wird auf „false“ gesetzt.

Der Nullpunkt für die x- und y-Winkel ist definiert als der Zustand, in dem die x- und y-Achsen des Geräts auf den Horizont ausgerichtet sind. Hier ist ein Beispiel dafür, wie sich der x-Wert bei einer Bewegung des Geräts ändert.

Das Gerät ist im Seitenprofil dargestellt und neigt sich um die Winkel x von 30, 15, 0, -15 und -30 Grad.

Hier ist ein Beispiel dafür, wie sich der y-Wert mit der Bewegung des Geräts ändert.

Das Gerät ist von der Seite zu sehen und wird um y-Winkel von -30, -15, 0, 15 und 30 Grad geneigt.

Beachten Sie, dass bei einem x-Wert von 90 oder -90 die Werte für z und y eine Drehung um dieselbe Achse bewirken (aufgrund der Reihenfolge der Operationen). In diesem Fall beträgt die y-Drehung 0.

Dokumentation der Eigenschaften

[read-only] x : qreal

Diese Eigenschaft gibt die Drehung um die x-Achse an.

Gemessen in Grad.

Zugriffsfunktionen:

qreal x() const

Siehe auch „ QRotationReading Units “.

[read-only] y : qreal

Diese Eigenschaft gibt die Drehung um die y-Achse an.

Gemessen in Grad.

Zugriffsfunktionen:

qreal y() const

Siehe auch „ QRotationReading Units “.

[read-only] z : qreal

Diese Eigenschaft gibt die Drehung um die z-Achse an.

Gemessen in Grad.

Zugriffsfunktionen:

qreal z() const

Siehe auch „ QRotationReading Units “.

Dokumentation der Member-Funktionen

void QRotationReading::setFromEuler(qreal x, qreal y, qreal z)

Legt die Drehung anhand von drei Eulerwinkeln fest.

Dies muss vom Backend aufgerufen werden.

Die Winkel werden in Grad gemessen. Die Reihenfolge der Drehungen ist entscheidend, da zuerst die Drehung um die Achse „ z “ angewendet wird, dann die Drehung um die Achse „ x “ und schließlich die Drehung um die Achse „ y “.

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