Класс QRotationReading
Класс QRotationReading представляет одно считывание датчика вращения. Подробнее...
| Заголовок: | #include <QRotationReading> |
| qmake: | QT += sensors |
| С момента: | Qt 5.1 |
| Наследуется от: | QSensorReading |
Свойства
- 1 свойство унаследовано от QSensorReading
- 1 свойство унаследовано от QObject
Открытые функции
| QRotationReading(QObject *parent = DECLARE_READING(QRotationReading)) | |
| virtual | ~QRotationReading() |
| void | setFromEuler(qreal x, qreal y, qreal z) |
| qreal | x() const |
| qreal | y() const |
| qreal | z() const |
Переопределенные открытые функции
| virtual void | copyValuesFrom(QSensorReading *other) override |
- 4 открытых функции унаследованы от QSensorReading
- 34 открытых функции унаследованы от QObject
Дополнительные унаследованные члены
- 1 открытый слот унаследован от QObject
- 2 сигналы унаследованы от QObject
- 1 открытая переменная унаследована от QObject
- 10 статические открытые члены унаследованы от QObject
- 9 защищенные функции унаследованы от QObject
- 2 защищенные переменные унаследованы от QObject
Подробное описание
Класс QRotationReading представляет одно считывание датчика вращения.
Единицы измерения 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.
Документация по функциям-членам
QRotationReading::QRotationReading(QObject *parent = DECLARE_READING(QRotationReading))
Конструктор по умолчанию класса QRotationReading.
[virtual] QRotationReading::~QRotationReading()
Удаляет экземпляр QRotationReading. Деструктор является виртуальным.
[override virtual] void QRotationReading::copyValuesFrom(QSensorReading *other)
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/archives/qt-5.11/qrotationreading.html