Класс QRotationReading
Класс QRotationReading представляет собой одно считывание данных датчика вращения. Подробнее...
| Заголовок: | #include <QRotationReading> |
| qmake: | QT += sensors |
| С момента: | Qt 5.1 |
| Наследуется от: | QSensorReading |
Этот класс был представлен в Qt 5.1.
Свойства
Открытые функции
| void | setFromEuler(qreal x, qreal y, qreal z) |
| qreal | x() const |
| qreal | y() const |
| qreal | z() const |
Подробное описание
Единицы измерения QRotationReading
Считывание вращения содержит 3 угла, измеряемые в градусах, которые определяют ориентацию устройства в трехмерном пространстве. Эти углы аналогичны углу рыскания, тангажа и крена, но определяются только правым вращением с осями, как определено в правой декартовой системе координат.
Три угла применяются к устройству в следующем порядке.
- Вращение по оси z (от -180 до 180]. Начало от оси y и увеличение против часовой стрелки.
- Вращение по оси x [-90, 90]. Начало от новой (после вращения) оси y и увеличение к оси z.
- Вращение по оси y (от -180 до 180]. Начало от новой (после двойного вращения) оси z и увеличение к оси x.
Вот визуализация, показывающая порядок применения углов.
Точка отсчета для угла z определяется как фиксированный внешний объект и зависит от устройства. Хотя в качестве этой точки отсчета обычно используется магнитный север, это может быть не так. Не пытайтесь сравнивать значения угла z между устройствами или даже на одном устройстве, если оно переместилось на значительное расстояние.
Если устройство не может определить фиксированный внешний объект, угол z всегда будет равен 0, а свойство QRotationSensor::hasZ будет установлено в false.
Точка отсчета для углов x и y определяется как положение, когда оси x и y устройства ориентированы в горизонтальном направлении. Вот пример того, как значение x будет изменяться при перемещении устройства.
Вот пример того, как значение y будет изменяться при перемещении устройства.
Обратите внимание, что когда x равен 90 или -90, значения z и y достигают вращения вокруг одной и той же оси (из-за порядка операций). В этом случае вращение по оси y будет равно 0.
Документация по свойствам
x : const qreal
Это свойство содержит вращение вокруг оси x.
Измеряется в градусах.
Функции доступа:
| qreal | x() const |
См. также Единицы измерения QRotationReading.
y : const qreal
Это свойство содержит вращение вокруг оси y.
Измеряется в градусах.
Функции доступа:
| qreal | y() const |
См. также Единицы измерения QRotationReading.
z : const qreal
Это свойство содержит вращение вокруг оси z.
Измеряется в градусах.
Функции доступа:
| qreal | z() const |
См. также Единицы измерения QRotationReading.
Документация по членам-функциям
void QRotationReading::setFromEuler(qreal x, qreal y, qreal z)
Устанавливает вращение из трех углов Эйлера.
Должно вызываться из бэкенда.
Углы измеряются в градусах. Порядок вращений важен, так как сначала применяется вращение по оси z, затем по оси x, и, наконец, по оси y.
Функция была представлена в Qt 5.0.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qrotationreading.html