Класс QOrbitCameraController
(Qt3DExtras::QOrbitCameraController)Класс QOrbitCameraController позволяет управлять камерой сцены по орбитальной траектории. Подробнее...
| Заголовок: | #include <QOrbitCameraController> |
| qmake: | QT += 3dextras |
| С момента: | Qt 5.7 |
| Наследуется от: | Qt3DCore::QEntity |
Свойства
- camera : Qt3DRender::QCamera *
- linearSpeed : float
- lookSpeed : float
- zoomInLimit : float
- 3 свойства унаследованы от Qt3DCore::QNode
- 1 свойство унаследовано от QObject
Открытые функции
| QOrbitCameraController(Qt3DCore::QNode *parent = nullptr) | |
| ~QOrbitCameraController() | |
| Qt3DRender::QCamera * | camera() const |
| float | linearSpeed() const |
| float | lookSpeed() const |
| void | setCamera(Qt3DRender::QCamera *camera) |
| void | setLinearSpeed(float linearSpeed) |
| void | setLookSpeed(float lookSpeed) |
| void | setZoomInLimit(float zoomInLimit) |
| float | zoomInLimit() const |
- 4 открытых функции унаследованы от Qt3DCore::QEntity
- 11 открытых функций унаследованы от Qt3DCore::QNode
- 32 открытых функции унаследованы от QObject
Сигналы
| void | cameraChanged() |
| void | linearSpeedChanged() |
| void | lookSpeedChanged() |
| void | zoomInLimitChanged() |
- 4 сигнала унаследованы от Qt3DCore::QNode
- 2 сигнала унаследованы от QObject
Дополнительные унаследованные члены
- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
- 11 static public members inherited from QObject
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject
Подробное описание
Класс QOrbitCameraController позволяет управлять камерой сцены по орбитальной траектории.
Управление осуществляется следующим образом:
| Вход | Действие |
|---|---|
| Левая кнопка мыши | При нажатой левой кнопке мыши перемещение курсора по оси X перемещает камеру влево и вправо, а по оси Y — вверх и вниз. |
| Правая кнопка мыши | При нажатой правой кнопке мыши перемещение курсора по оси X вращает камеру вокруг центра обзора, а по оси Y наклоняет её вокруг центра обзора. |
| Обе кнопки мыши | При нажатых обеих кнопках мыши перемещение курсора по оси Y приближает и отдаляет камеру без изменения центра обзора. |
| Колесо мыши | Приближает и отдаляет камеру без изменения центра обзора. |
| Клавиши со стрелками | Перемещает камеру вертикально и горизонтально относительно области просмотра камеры. |
| Клавиши Page Up и Page Down | Перемещает камеру вперёд и назад. |
| Ключ Shift | Изменяет поведение клавиш со стрелками вверх и вниз на приближение и удаление камеры без изменения центра обзора. Другие клавиши перемещения будут отключены. |
| Ключ Alt | Изменяет поведение клавиш со стрелками на вращение и наклонение камеры вокруг центра обзора. Отключает клавиши Page Up и Page Down. |
Документация по свойствам
camera : Qt3DRender::QCamera *
Содержит текущую управляемую камеру.
Функции доступа:
| Qt3DRender::QCamera * | camera() const |
| void | setCamera(Qt3DRender::QCamera *camera) |
Сигнал оповещения:
| void | cameraChanged() |
linearSpeed : float
Содержит текущую линейную скорость контроллера камеры. Линейная скорость определяет скорость перемещения камеры.
Функции доступа:
| float | linearSpeed() const |
| void | setLinearSpeed(float linearSpeed) |
Сигнал оповещения:
| void | linearSpeedChanged() |
lookSpeed : float
Содержит текущую скорость вращения контроллера камеры. Скорость вращения определяет скорость поворота камеры при панорамировании и наклоне.
Функции доступа:
| float | lookSpeed() const |
| void | setLookSpeed(float lookSpeed) |
Сигнал оповещения:
| void | lookSpeedChanged() |
zoomInLimit : float
Содержит текущее значение предела приближения. Предел приближения определяет, насколько близко к центру обзора можно приблизить камеру.
Функции доступа:
| float | zoomInLimit() const |
| void | setZoomInLimit(float zoomInLimit) |
Сигнал оповещения:
| void | zoomInLimitChanged() |
Документация по функциям-членам
QOrbitCameraController::QOrbitCameraController(Qt3DCore::QNode *parent = nullptr)
Создаёт экземпляр QOrbitCameraController по умолчанию.
QOrbitCameraController::~QOrbitCameraController()
Удаляет экземпляр QOrbitCameraController.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qt3dextras-qorbitcameracontroller.html