Qt Sensors - QML example

The QtSensors - QML example demonstrates the QML sensors types in the QtSensors 5 import.

Qt Sensors in QML

To write a QML application that will use the QML sensors types in the QtSensors 5 import you need to to the following steps:

Import the QtSensors 5.x declarative plugin:

 import QtSensors 5.0

Add the Sensor QML types into your qml file.

In this example we use the TiltSensor:

 TiltSensor {
     id: tilt
     active: false
 }

The Tilt-, AmbientLight- and the Proximity QML sensor types have the 'enabled' property in common. To start or stop the sensor set this property to true or false.

 tilt.active = (tiltStart.text === "Start");

Reading the data can be done for each sensor type like following:

TiltSensor

 text: "X Rotation: " + (tilt.reading ? tilt.reading.xRotation.toFixed(2) + "°" : "Unknown")
 text: "Y Rotation: " + (tilt.reading ? tilt.reading.yRotation.toFixed(2) + "°" : "Unknown")

AmbientLightSensor

 onReadingChanged: {
     if (reading.lightLevel == AmbientLightReading.Dark)
         ambientlighttext.text = "Ambient light: Dark";
     else if (reading.lightLevel == AmbientLightReading.Twilight)
         ambientlighttext.text = "Ambient light: Twilight";
     else if (reading.lightLevel == AmbientLightReading.Light)
         ambientlighttext.text = "Ambient light: Light";
     else if (reading.lightLevel == AmbientLightReading.Bright)
         ambientlighttext.text = "Ambient light: Bright";
     else if (reading.lightLevel == AmbientLightReading.Sunny)
         ambientlighttext.text = "Ambient light: Sunny";
     else
         ambientlighttext.text = "Ambient light: Unknown";
 }

ProximitySensor

 text: "Proximity: " +
       (proxi.active ? (proxi.reading.near ? "Near" : "Far") : "Unknown")

Example project @ code.qt.io

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