Spec-Zone.ru › Qt 5.11

Класс QGraphicsRotation

Класс QGraphicsRotation предоставляет трансформацию поворота вокруг заданной оси. Подробнее...

Заголовок: #include <QGraphicsRotation>
qmake: QT += widgets
С тех пор: Qt 4.6
Наследует: QGraphicsTransform
  • Список всех членов, включая унаследованные

Свойства

  • angle : qreal
  • axis : QVector3D
  • origin : QVector3D
  • 1 свойство унаследовано от QObject

Открытые функции

QGraphicsRotation(QObject *parent = nullptr)
virtual ~QGraphicsRotation()
qreal angle() const
QVector3D axis() const
QVector3D origin() const
void setAngle(qreal)
void setAxis(const QVector3D &axis)
void setAxis(Qt::Axis axis)
void setOrigin(const QVector3D &point)

Реализованные публичные функции

virtual void applyTo(QMatrix4x4 *matrix) const override
  • 1 открытая функция, унаследованная от QGraphicsTransform
  • 34 открытых функции, унаследованные от QObject

Сигналы

void angleChanged()
void axisChanged()
void originChanged()
  • 2 сигнала, унаследованные от QObject

Дополнительные унаследованные члены

  • 1 открытый слот, унаследованный от QObject
  • 1 открытая переменная, унаследованная от QObject
  • 10 статические открытые члены, унаследованные от QObject
  • 9 защищенных функций, унаследованных от QObject
  • 1 защищенный слот, унаследованный от QGraphicsTransform
  • 2 защищенных переменных, унаследованные от QObject

Подробное описание

Класс QGraphicsRotation предоставляет трансформацию поворота вокруг заданной оси.

Вы можете задать желаемую ось, присвоив QVector3D свойству axis или передав значение Qt::Axis в удобную функцию setAxis. По умолчанию ось — (0, 0, 1), т.е. поворот вокруг оси Z.

Свойство angle, которое предоставляет QGraphicsRotation, теперь описывает количество градусов поворота вокруг этой оси.

QGraphicsRotation предоставляет определенные параметры для управления тем, как должен применяться поворот.

Точка origin — это точка, вокруг которой вращается элемент (т.е. она остается неподвижной относительно родителя, в то время как остальная часть элемента вращается). По умолчанию origin — QPointF(0, 0).

Свойство angle указывает количество градусов, на которое элемент вращается по часовой стрелке вокруг origin. Это значение может быть отрицательным, что указывает на против часовой стрелки. Для целей анимации также может быть полезно задавать углы поворота, превышающие (-360, 360) градусов, например, для анимации вращения элемента несколько раз.

Примечание: конечный поворот — это совокупный эффект поворота в 3D-пространстве, за которым следует проекция обратно в 2D. Если повороты выполняются последовательно, они не будут работать как ожидается, если только они не выполняются все вокруг оси Z.

См. также QGraphicsTransform, QGraphicsItem::setRotation() и QTransform::rotate().

Документация по свойствам

angle : qreal

Это свойство хранит угол для поворота по часовой стрелке в градусах.

Угол может быть любым действительным числом; значение по умолчанию — 0,0. Значение 180 повернет на 180 градусов по часовой стрелке. Если вы зададите отрицательное число, элемент будет повернут против часовой стрелки. Обычно угол поворота находится в диапазоне (-360, 360), но вы также можете указать числа, выходящие за этот диапазон (например, угол 370 градусов даст тот же результат, что и 10 градусов). Установка значения angle в NaN приводит к отсутствию поворота.

Функции доступа:

qreal angle() const
void setAngle(qreal)

Сигнал уведомления:

void angleChanged()

См. также origin.

axis : QVector3D

Это свойство хранит ось поворота, заданную вектором в 3D-пространстве.

Это может быть любая ось в 3D-пространстве. По умолчанию ось — (0, 0, 1), которая совпадает с осью Z. Если вы зададите другую ось, QGraphicsRotation предоставит трансформацию, которая вращает вокруг этой оси. Например, если вы хотите повернуть элемент вокруг оси X, вы можете передать (1, 0, 0) как ось.

Функции доступа:

QVector3D axis() const
void setAxis(const QVector3D &axis)
void setAxis(Qt::Axis axis)

Сигнал уведомления:

void axisChanged()

См. также QTransform и QGraphicsRotation::angle.

origin : QVector3D

Это свойство хранит начало поворота в 3D-пространстве.

Все повороты будут выполняться относительно этой точки (т.е. эта точка будет оставаться неподвижной относительно родителя при повороте элемента).

Функции доступа:

QVector3D origin() const
void setOrigin(const QVector3D &point)

Сигнал уведомления:

void originChanged()

См. также angle.

Документация по функциям-членам

QGraphicsRotation::QGraphicsRotation(QObject *parent = nullptr)

Создаёт новый QGraphicsRotation с данным parent.

[virtual] QGraphicsRotation::~QGraphicsRotation()

Уничтожает поворот графики.

[signal] void QGraphicsRotation::angleChanged()

Этот сигнал излучается всякий раз, когда угол меняется.

Примечание: Сигнал уведомления для свойства angle.

См. также QGraphicsRotation::angle.

[override virtual] void QGraphicsRotation::applyTo(QMatrix4x4 *matrix) const

Реализовано из QGraphicsTransform::applyTo().

[signal] void QGraphicsRotation::axisChanged()

Этот сигнал излучается всякий раз, когда изменяется ось объекта.

Примечание: Сигнал уведомления для свойства axis.

См. также QGraphicsRotation::axis.

[signal] void QGraphicsRotation::originChanged()

Этот сигнал излучается всякий раз, когда изменяется начало координат.

Примечание: Сигнал уведомления для свойства origin.

См. также QGraphicsRotation::origin.

void QGraphicsRotation::setAxis(Qt::Axis axis)

Функция-утилита для установки оси на axis.

Примечание: вращение Qt::YAxis для QTransform инвертируется по сравнению с правильным математическим вращением в 3D пространстве. Класс QGraphicsRotation реализует правильное математическое вращение. Следующие две последовательности кода выполнят одно и то же преобразование:

QTransform t;
t.rotate(45, Qt::YAxis);

QGraphicsRotation r;
r.setAxis(Qt::YAxis);
r.setAngle(-45);

Примечание: Функция-установщик для свойства axis.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qgraphicsrotation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API