Класс QCamera
(Qt3DRender::QCamera)Класс QCamera определяет точку обзора, через которую будет отрисовываться сцена. Подробнее...
| Заголовок: | #include <Qt3DRender/QCamera> |
| qmake: | QT += 3drender |
| С тех пор: | Qt 5.5 |
| Инициализируется: | Camera |
| Наследуется от: | Qt3DCore::QEntity |
Открытые типы
| Перечисление | CameraTranslationOption { TranslateViewCenter, DontTranslateViewCenter } |
Свойства
|
|
- 3 свойства унаследованы от Qt3DCore::QNode
- 1 свойство унаследовано от QObject
Открытые функции
| QCamera(QNode *parent = nullptr) | |
| float | aspectRatio() const |
| float | bottom() const |
| float | exposure() const |
| float | farPlane() const |
| float | fieldOfView() const |
| float | left() const |
| QCameraLens * | lens() const |
| float | nearPlane() const |
| void | pan(float angle) |
| void | pan(float angle, const QVector3D &axis) |
| void | panAboutViewCenter(float angle) |
| void | panAboutViewCenter(float angle, const QVector3D &axis) |
| QQuaternion | panRotation(float angle) const |
| QVector3D | position() const |
| QMatrix4x4 | projectionMatrix() const |
| QCameraLens::ProjectionType | projectionType() const |
| float | right() const |
| void | roll(float angle) |
| void | rollAboutViewCenter(float angle) |
| QQuaternion | rollRotation(float angle) const |
| void | rotate(const QQuaternion &q) |
| void | rotateAboutViewCenter(const QQuaternion &q) |
| QQuaternion | rotation(float angle, const QVector3D &axis) const |
| void | tilt(float angle) |
| void | tiltAboutViewCenter(float angle) |
| QQuaternion | tiltRotation(float angle) const |
| float | top() const |
| Qt3DCore::QTransform * | transform() const |
| void | translate(const QVector3D &vLocal, CameraTranslationOption option = TranslateViewCenter) |
| void | translateWorld(const QVector3D &vWorld, CameraTranslationOption option = TranslateViewCenter) |
| QVector3D | upVector() const |
| QVector3D | viewCenter() const |
| QVector3D | viewVector() const |
- 4 открытые функции унаследованы от Qt3DCore::QEntity
- 11 открытые функции унаследованы от Qt3DCore::QNode
- 32 открытые функции унаследованы от QObject
Открытые слоты
| void | setAspectRatio(float aspectRatio) |
| void | setBottom(float bottom) |
| void | setExposure(float exposure) |
| void | setFarPlane(float farPlane) |
| void | setFieldOfView(float fieldOfView) |
| void | setLeft(float left) |
| void | setNearPlane(float nearPlane) |
| void | setPosition(const QVector3D &position) |
| void | setProjectionMatrix(const QMatrix4x4 &projectionMatrix) |
| void | setProjectionType(QCameraLens::ProjectionType type) |
| void | setRight(float right) |
| void | setTop(float top) |
| void | setUpVector(const QVector3D &upVector) |
| void | setViewCenter(const QVector3D &viewCenter) |
- 3 public slots унаследованы от Qt3DCore::QNode
- 1 public slot унаследован от QObject
Сигналы
| void | aspectRatioChanged(float aspectRatio) |
| void | bottomChanged(float bottom) |
| void | exposureChanged(float exposure) |
| void | farPlaneChanged(float farPlane) |
| void | fieldOfViewChanged(float fieldOfView) |
| void | leftChanged(float left) |
| void | nearPlaneChanged(float nearPlane) |
| void | positionChanged(const QVector3D &position) |
| void | projectionMatrixChanged(const QMatrix4x4 &projectionMatrix) |
| void | projectionTypeChanged(QCameraLens::ProjectionType projectionType) |
| void | rightChanged(float right) |
| void | topChanged(float top) |
| void | upVectorChanged(const QVector3D &upVector) |
| void | viewCenterChanged(const QVector3D &viewCenter) |
| void | viewVectorChanged(const QVector3D &viewVector) |
- 4 сигнала унаследованы от Qt3DCore::QNode
- 2 сигнала унаследованы от QObject
Защищённые функции
| QCamera(QCameraPrivate &dd, QNode *parent = nullptr) |
- 2 защищённых функции унаследованы от Qt3DCore::QNode
- 9 защищённых функций унаследованы от QObject
Дополнительные унаследованные члены
- 11 статических public членов унаследованы от QObject
Подробное описание
Класс QCamera определяет точку обзора, через которую будет рендериться сцена.
Документация по типам членов
перечисление QCamera::CameraTranslationOption
Это перечисление определяет, как будет перемещаться центр обзора камеры
| Постоянная | Значение | Описание |
|---|---|---|
Qt3DRender::QCamera::TranslateViewCenter |
0 |
Переместить центр обзора, сохранив направление обзора неизменным |
Qt3DRender::QCamera::DontTranslateViewCenter |
1 |
Не перемещать центр обзора, изменяя направление обзора |
Документация свойств
aspectRatio : float
Содержит текущее соотношение сторон.
Функции доступа:
| float | aspectRatio() const |
| void | setAspectRatio(float aspectRatio) |
Сигнал уведомления:
| void | aspectRatioChanged(float aspectRatio) |
bottom : float
Содержит текущую нижнюю границу камеры.
Функции доступа:
| float | bottom() const |
| void | setBottom(float bottom) |
Сигнал уведомления:
| void | bottomChanged(float bottom) |
exposure : float
Содержит текущую экспозицию камеры.
Функции доступа:
| float | exposure() const |
| void | setExposure(float exposure) |
Сигнал уведомления:
| void | exposureChanged(float exposure) |
farPlane : float
Содержит текущую дальнюю плоскость камеры.
Функции доступа:
| float | farPlane() const |
| void | setFarPlane(float farPlane) |
Сигнал уведомления:
| void | farPlaneChanged(float farPlane) |
fieldOfView : float
Содержит текущее поле зрения в градусах.
Функции доступа:
| float | fieldOfView() const |
| void | setFieldOfView(float fieldOfView) |
Сигнал уведомления:
| void | fieldOfViewChanged(float fieldOfView) |
left : float
Содержит текущее левое значение камеры.
Функции доступа:
| float | left() const |
| void | setLeft(float left) |
Сигнал уведомления:
| void | leftChanged(float left) |
nearPlane : float
Содержит текущую ближнюю плоскость камеры.
Функции доступа:
| float | nearPlane() const |
| void | setNearPlane(float nearPlane) |
Сигнал уведомления:
| void | nearPlaneChanged(float nearPlane) |
position : QVector3D
Содержит положение камеры в координатах, относительных к родительскому объекту.
Функции доступа:
| QVector3D | position() const |
| void | setPosition(const QVector3D &position) |
Сигнал уведомления:
| void | positionChanged(const QVector3D &position) |
projectionMatrix : QMatrix4x4
Содержит текущую проекционную матрицу камеры.
Функции доступа:
| QMatrix4x4 | projectionMatrix() const |
| void | setProjectionMatrix(const QMatrix4x4 &projectionMatrix) |
Сигнал уведомления:
| void | projectionMatrixChanged(const QMatrix4x4 &projectionMatrix) |
projectionType : Qt3DRender::QCameraLens::ProjectionType
Содержит тип проекции камеры.
- CameraLens.OrthographicProjection
- CameraLens.PerspectiveProjection
- CameraLens.FrustumProjection
- CameraLens.CustomProjection
Функции доступа:
| QCameraLens::ProjectionType | projectionType() const |
| void | setProjectionType(QCameraLens::ProjectionType type) |
Сигнал уведомления:
| void | projectionTypeChanged(QCameraLens::ProjectionType projectionType) |
См. также Qt3DRender::QCameraLens::ProjectionType.
right : float
Содержит текущее правое значение камеры.
Функции доступа:
| float | right() const |
| void | setRight(float right) |
Сигнал уведомления:
| void | rightChanged(float right) |
top : float
Содержит текущую верхнюю границу камеры.
Функции доступа:
| float | top() const |
| void | setTop(float top) |
Сигнал уведомления:
| void | topChanged(float top) |
upVector : QVector3D
Содержит вектор «вверх» камеры в координатах, относительных к родительскому объекту.
Функции доступа:
| QVector3D | upVector() const |
| void | setUpVector(const QVector3D &upVector) |
Сигнал уведомления:
| void | upVectorChanged(const QVector3D &upVector) |
viewCenter : QVector3D
Содержит центр области обзора камеры в координатах, относящихся к родительскому объекту.
Функции доступа:
| QVector3D | viewCenter() const |
| void | setViewCenter(const QVector3D &viewCenter) |
Сигнал уведомления:
| void | viewCenterChanged(const QVector3D &viewCenter) |
viewVector : const QVector3D
Содержит вектор направления обзора камеры в координатах, относящихся к родительскому объекту.
Функции доступа:
| QVector3D | viewVector() const |
Сигнал уведомления:
| void | viewVectorChanged(const QVector3D &viewVector) |
Документация по членам-функциям
QCamera::QCamera(QNode *parent = nullptr)
Инициализирует экземпляр QCamera.
[protected] QCamera::QCamera(QCameraPrivate &dd, QNode *parent = nullptr)
Конструктор копирования.
QCameraLens *QCamera::lens() const
Возвращает текущую линзу.
void QCamera::pan(float angle)
Изменяет угол поворота камеры на angle градусов.
void QCamera::pan(float angle, const QVector3D &axis)
Изменяет угол поворота камеры на angle градусов вокруг заданной axis.
void QCamera::panAboutViewCenter(float angle)
Поворачивает камеру вокруг центра области обзора на angle градусов.
void QCamera::panAboutViewCenter(float angle, const QVector3D &axis)
Поворачивает камеру вокруг центра области обзора на angle градусов вокруг заданной axis.
QQuaternion QCamera::panRotation(float angle) const
Возвращает вычисленное вращение по панорамированию, связанное с углом angle в градусах, используемым для регулировки панорамирования или поворота камеры влево/вправо по оси Y.
void QCamera::roll(float angle)
Изменяет угол наклона камеры на angle градусов.
void QCamera::rollAboutViewCenter(float angle)
Изменяет угол наклона камеры вокруг центра области обзора на angle градусов.
QQuaternion QCamera::rollRotation(float angle) const
Возвращает вычисленное вращение наклона, связанное с углом angle в градусах, используемым для регулировки наклона или поворота камеры влево/вправо по оси Z.
void QCamera::rotate(const QQuaternion &q)
Поворачивает камеру с использованием кватерниона q.
void QCamera::rotateAboutViewCenter(const QQuaternion &q)
Поворачивает камеру вокруг центра области обзора с использованием кватерниона q.
QQuaternion QCamera::rotation(float angle, const QVector3D &axis) const
Возвращает вычисленное вращение, связанное с углом angle в градусах и выбранной осью axis.
[slot] void QCamera::setAspectRatio(float aspectRatio)
Устанавливает соотношение сторон камеры в aspectRatio.
Примечание: Функция установки свойства aspectRatio.
См. также aspectRatio().
[slot] void QCamera::setBottom(float bottom)
Устанавливает нижнюю границу камеры в bottom.
Примечание: Функция установки свойства bottom.
См. также bottom().
[slot] void QCamera::setExposure(float exposure)
Устанавливает экспозицию камеры в exposure.
Примечание: Функция установки свойства exposure.
См. также exposure().
[slot] void QCamera::setFarPlane(float farPlane)
Устанавливает дальнюю плоскость камеры в farPlane.
Примечание: Функция установки свойства farPlane.
См. также farPlane().
[slot] void QCamera::setFieldOfView(float fieldOfView)
Устанавливает поле обзора камеры в fieldOfView градусов.
Примечание: Функция установки свойства fieldOfView.
См. также fieldOfView().
[slot] void QCamera::setLeft(float left)
Устанавливает левую границу камеры в left.
Примечание: Функция установки свойства left.
См. также left().
[slot] void QCamera::setNearPlane(float nearPlane)
Устанавливает ближнюю плоскость камеры в nearPlane.
Примечание: Функция установки свойства nearPlane.
См. также nearPlane().
[slot] void QCamera::setPosition(const QVector3D &position)
Устанавливает положение камеры в 3D пространстве в position.
Примечание: Функция установки свойства position.
См. также position().
[slot] void QCamera::setProjectionMatrix(const QMatrix4x4 &projectionMatrix)
Устанавливает матрицу проекции камеры в projectionMatrix.
Примечание: Функция установки свойства projectionMatrix.
См. также projectionMatrix().
[slot] void QCamera::setProjectionType(QCameraLens::ProjectionType type)
Устанавливает тип проекции камеры в type.
Примечание: Функция установки свойства projectionType.
См. также projectionType().
[slot] void QCamera::setRight(float right)
Устанавливает правую границу камеры в right.
Примечание: Функция установки свойства right.
См. также right().
[slot] void QCamera::setTop(float top)
Устанавливает верхнюю границу камеры в top.
Примечание: Функция установки свойства top.
См. также top().
[slot] void QCamera::setUpVector(const QVector3D &upVector)
Устанавливает вектор «вверх» камеры в upVector.
Примечание: Функция установки свойства upVector.
См. также upVector().
[slot] void QCamera::setViewCenter(const QVector3D &viewCenter)
Устанавливает центр обзора камеры на viewCenter.
Примечание: Функция-сеттер для свойства viewCenter.
См. также viewCenter().
void QCamera::tilt(float angle)
Изменяет угол наклона камеры на angle градусов.
void QCamera::tiltAboutViewCenter(float angle)
Изменяет наклон камеры относительно центра обзора на angle градусов.
QQuaternion QCamera::tiltRotation(float angle) const
Возвращает вычисленный поворот наклона относительно angle в градусах, используемый для изменения наклона или поворота камеры вверх/вниз по оси X.
Qt3DCore::QTransform *QCamera::transform() const
Возвращает положение камеры через преобразование.
void QCamera::translate(const QVector3D &vLocal, CameraTranslationOption option = TranslateViewCenter)
Перемещает позицию камеры и ее вектор обзора на vLocal в локальных координатах. Параметр option позволяет переключать, должен ли перемещаться центр обзора.
void QCamera::translateWorld(const QVector3D &vWorld, CameraTranslationOption option = TranslateViewCenter)
Перемещает позицию камеры и ее вектор обзора на vWorld в мировых координатах. Параметр option позволяет переключать, должен ли перемещаться центр обзора.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qt3drender-qcamera.html