Sensor-Übersicht
Das Beispiel „Sensoren-Übersicht“ veranschaulicht die Verwendung von Sensoren anhand visueller Beispiele.

Übersicht
Beim Start zeigt die Anwendung ein Menü mit Schaltflächen für die Unteransichten der einzelnen Sensoren an. Die Sensoransichten instanziieren den jeweiligen Sensor, zeigen die Sensorwerte als Zahlen an und visualisieren sie zudem mit einer einfachen grafischen Darstellung.
Hauptmenü
Die Hauptansicht zeigt den Titel mit dem Namen der Anwendung sowie eine Schaltfläche für jede Unteransicht, die mithilfe eines „ ColumnLayout “ gleichmäßig angeordnet sind. Ein „ StackView “ verwaltet die Navigation zwischen den Unteransichten und dem Hauptmenü. Die Anwendung prüft beim Start die Verfügbarkeit der Sensoren und deaktiviert die Schaltflächen für die Sensoren, die nicht verfügbar sind.
Hinweis: Zur Vereinfachung des Beispiels wird die Verfügbarkeit der Sensoren nur einmal beim Start überprüft.
Beschleunigungsmesser-Ansicht
Die Beschleunigungsmesser-Ansicht zeigt die aktuellen Beschleunigungswerte des Geräts an und verschiebt ein Bild um einen Betrag, der der Beschleunigung des Geräts entgegengesetzt ist, wodurch das Bild einen Trägheitseffekt erhält, der proportional zur Bewegung des Geräts ist.
Die Verschiebung des Bildes erfolgt in der Methode „ onReadingChanged “ des Beschleunigungssensors.
Accelerometer {
id: accelerometer
property real x: 0
property real y: 0
property real z: 0
active: true
dataRate: 25
onReadingChanged: {
x = (reading as AccelerometerReading).x
y = (reading as AccelerometerReading).y
z = (reading as AccelerometerReading).z
imageTranslation.x = -x * 10
imageTranslation.y = y * 10
}
}Sobald ein neuer Beschleunigungsmesserwert vorliegt, werden die Koordinaten für die Bildverschiebung entsprechend aktualisiert.
Näherungssensor-Ansicht
Die Näherungsansicht zeigt ein Bild, das vergrößert wird, sobald der Näherungssensor des Geräts abgedeckt wird.
Kompassansicht
Die Kompassansicht zeigt ein Kompassbild, das entsprechend dem Messwert des Kompasssensors gedreht wird, sodass der Kompass nach Norden zeigt.
Magnetometer-Ansicht
Die Magnetometeransicht zeigt ein Magnetbild an, das um einen Winkel gedreht wird, der sich aus dem Drehwinkel des Vektors ergibt, der durch die x- und y-Werte des Magnetometers bestimmt wird. Dies führt in der Regel zu derselben Drehung wie beim Kompass und veranschaulicht einen Anwendungsfall, wie die Magnetometerwerte genutzt werden können. Da das Magnetometer Messwerte entlang aller drei Achsen liefert, besteht mehr Freiheit bei der Verwendung dieser Messwerte.
Magnetometer {
id: magnetometer
active: true
dataRate: 25
onReadingChanged: {
root.magnetometerX = (reading as MagnetometerReading).x
root.magnetometerY = (reading as MagnetometerReading).y
root.magnetometerZ = (reading as MagnetometerReading).z
root.magnetRotation =
((Math.atan2(root.magnetometerX, root.magnetometerY) / Math.PI) * 180)
}
}Gyroskop-Ansicht

Die Gyroskopansicht zeigt ebenfalls ein Bild, das um drei Achsen um einen Winkel gedreht ist, der aus den Gyroskopmesswerten berechnet wird. Da das Gyroskop relative Drehänderungen um die drei Raumachsen liefert und die Zeit zwischen den Messwertaktualisierungen variieren kann, wird der Zeitpunkt der Messwerte gespeichert und die Drehänderung auf der Grundlage der zwischen den Messwertaktualisierungen verstrichenen Zeit normiert.
Gyroscope {
id: gyroscope
property var lastTimeStamp: 0
property real x: 0
property real y: 0
property real z: 0
active: true
dataRate: 25
onReadingChanged: {
x = (reading as GyroscopeReading).x
y = (reading as GyroscopeReading).y
z = (reading as GyroscopeReading).z
let firstCall = false
if (lastTimeStamp == 0) {
firstCall = true
}
let timeSinceLast = reading.timestamp - lastTimeStamp
lastTimeStamp = reading.timestamp
//Skipping the initial time jump from 0
if (firstCall === true)
return
let normalizedX = x * (timeSinceLast / 1000000)
imageXRotation.angle += normalizedX
let normalizedY = y * (timeSinceLast / 1000000)
imageYRotation.angle -= normalizedY
let normalizedZ = z * (timeSinceLast / 1000000)
imageZRotation.angle += normalizedZ
}
}Durch Drücken der Reset-Taste wird die Bilddrehung auf 0 zurückgesetzt.
© 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.