Класс QCameraLens
класс Qt3DRender::QCameraLensQt3DRender::QCameraLens задаёт матрицу проекции, которая будет использована для определения камеры в 3D-сцене. Подробнее...
| Заголовок: | #include <Qt3DRender/QCameraLens> |
| CMake: | find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| С момента: | Qt 5.5 |
| Инициализируется из: | CameraLens |
| Наследуется от: | Qt3DCore::QComponent |
Общие типы
| перечисление | ProjectionType { OrthographicProjection, PerspectiveProjection, FrustumProjection, CustomProjection } |
Свойства
|
|
Открытые функции
| QCameraLens(Qt3DCore::QNode *parent = nullptr) | |
| float | aspectRatio() const |
| float | bottom() const |
| float | exposure() const |
| float | farPlane() const |
| float | fieldOfView() const |
| float | left() const |
| float | nearPlane() const |
| QMatrix4x4 | projectionMatrix() const |
| Qt3DRender::QCameraLens::ProjectionType | projectionType() const |
| float | right() const |
| void | setFrustumProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane) |
| void | setOrthographicProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane) |
| void | setPerspectiveProjection(float fieldOfView, float aspectRatio, float nearPlane, float farPlane) |
| float | top() const |
Открытые слоты
| 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 | setProjectionMatrix(const QMatrix4x4 &projectionMatrix) |
| void | setProjectionType(Qt3DRender::QCameraLens::ProjectionType projectionType) |
| void | setRight(float right) |
| void | setTop(float top) |
Сигналы
| 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 | projectionMatrixChanged(const QMatrix4x4 &projectionMatrix) |
| void | projectionTypeChanged(QCameraLens::ProjectionType projectionType) |
| void | rightChanged(float right) |
| void | topChanged(float top) |
Подробное описание
Документация по типам членов
перечисление QCameraLens::ProjectionType
Указывает, какие параметры Qt3DRender::QCameraLens используются для вычисления матрицы проекции.
| Константа | Значение | Описание |
|---|---|---|
Qt3DRender::QCameraLens::OrthographicProjection |
0 |
Ортогональная проекция |
Qt3DRender::QCameraLens::PerspectiveProjection |
1 |
Перспективная проекция |
Qt3DRender::QCameraLens::FrustumProjection |
2 |
Проекция усечённого конуса |
Qt3DRender::QCameraLens::CustomProjection |
3 |
Пользовательская проекция |
Документация свойств
aspectRatio : float
Содержит текущее соотношение сторон объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции не Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| float | aspectRatio() const |
| void | setAspectRatio(float aspectRatio) |
Сигнал уведомления:
| void | aspectRatioChanged(float aspectRatio) |
bottom : float
Содержит текущую нижнюю плоскость объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции равен Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| 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
Содержит текущее поле зрения объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции не Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| float | fieldOfView() const |
| void | setFieldOfView(float fieldOfView) |
Сигнал уведомления:
| void | fieldOfViewChanged(float fieldOfView) |
left : float
Содержит текущую левую плоскость объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции равен Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| float | left() const |
| void | setLeft(float left) |
Сигнал уведомления:
| void | leftChanged(float left) |
nearPlane : float
Содержит текущую ближнюю плоскость объектива камеры.
Функции доступа:
| float | nearPlane() const |
| void | setNearPlane(float nearPlane) |
Сигнал уведомления:
| void | nearPlaneChanged(float nearPlane) |
projectionMatrix : QMatrix4x4
Содержит текущую проекционную матрицу объектива камеры.
Функции доступа:
| QMatrix4x4 | projectionMatrix() const |
| void | setProjectionMatrix(const QMatrix4x4 &projectionMatrix) |
Сигнал уведомления:
| void | projectionMatrixChanged(const QMatrix4x4 &projectionMatrix) |
projectionType : ProjectionType
Содержит тип проекции камеры.
Функции доступа:
| Qt3DRender::QCameraLens::ProjectionType | projectionType() const |
| void | setProjectionType(Qt3DRender::QCameraLens::ProjectionType projectionType) |
Сигнал уведомления:
| void | projectionTypeChanged(QCameraLens::ProjectionType projectionType) |
См. такжеQt3DRender::QCameraLens::ProjectionType.
right : float
Содержит текущую правую плоскость объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции равен Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| float | right() const |
| void | setRight(float right) |
Сигнал уведомления:
| void | rightChanged(float right) |
top : float
Содержит текущую верхнюю плоскость объектива камеры.
Примечание: Возвращаемое значение может быть неопределенным, если тип проекции равен Qt3DRender::QCameraLens::PerspectiveProjection.
Функции доступа:
| float | top() const |
| void | setTop(float top) |
Сигнал уведомления:
| void | topChanged(float top) |
Документация по членам-функциям
QCameraLens::QCameraLens(Qt3DCore::QNode *parent = nullptr)
Конструирует QCameraLens с заданным parent
[slot] void QCameraLens::setAspectRatio(float aspectRatio)
Устанавливает соотношение сторон проекции на aspectRatio. Это вызывает обновление проекционной матрицы.
Примечание: это не повлияет, если тип проекции не Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства aspectRatio.
См. также aspectRatio().
[slot] void QCameraLens::setBottom(float bottom)
Устанавливает нижнюю координату окна проекции в bottom. Это вызывает обновление матрицы проекции.
Примечание: это не повлияет, если тип проекции Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства bottom.
См. также bottom().
[slot] void QCameraLens::setExposure(float exposure)
Устанавливает exposure объектива камеры.
Примечание: Функция-сеттер для свойства exposure.
См. также exposure().
[slot] void QCameraLens::setFarPlane(float farPlane)
Устанавливает дальнюю плоскость проекции в farPlane. Это вызывает обновление матрицы проекции.
Примечание: Функция-сеттер для свойства farPlane.
См. также farPlane().
[slot] void QCameraLens::setFieldOfView(float fieldOfView)
Устанавливает поле зрения проекции в fieldOfView градусов. Это вызывает обновление матрицы проекции.
Примечание: это не повлияет, если тип проекции не Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства fieldOfView.
См. также fieldOfView().
[slot] void QCameraLens::setLeft(float left)
Устанавливает левую нижнюю координату окна проекции в left. Это вызывает обновление матрицы проекции.
Примечание: это не повлияет, если тип проекции Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства left.
См. также left().
[slot] void QCameraLens::setNearPlane(float nearPlane)
Устанавливает ближнюю плоскость проекции в nearPlane. Это вызывает обновление матрицы проекции.
Примечание: Функция-сеттер для свойства nearPlane.
См. также nearPlane().
[slot] void QCameraLens::setProjectionMatrix(const QMatrix4x4 &projectionMatrix)
Устанавливает матрицу проекции в projectionMatrix.
Примечание: Это установит тип проекции в Qt3DRender::QCameraLens::CustomProjection, и тем самым проигнорирует все другие параметры камеры, которые могли быть указаны.
Примечание: Функция-сеттер для свойства projectionMatrix.
См. также projectionMatrix().
[slot] void QCameraLens::setProjectionType(Qt3DRender::QCameraLens::ProjectionType projectionType)
Устанавливает тип проекции объектива в projectionType.
Примечание: Qt3DRender::QCameraLens::Frustum и Qt3DRender::QCameraLens::PerspectiveProjection представляют собой два разных способа задания одной и той же проекции.
Примечание: Функция-сеттер для свойства projectionType.
См. также projectionType().
[slot] void QCameraLens::setRight(float right)
Устанавливает правую верхнюю координату окна проекции в right. Это вызывает обновление матрицы проекции.
Примечание: это не повлияет, если тип проекции Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства right.
См. также right().
[slot] void QCameraLens::setTop(float top)
Устанавливает верхнюю координату окна проекции в top. Это вызывает обновление матрицы проекции.
Примечание: это не повлияет, если тип проекции Qt3DRender::QCameraLens::PerspectiveProjection.
Примечание: Функция-сеттер для свойства top.
См. также top().
void QCameraLens::setFrustumProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane)
Определяет ортогональную проекцию на основе left, right, bottom, top, nearPlane, farPlane.
void QCameraLens::setOrthographicProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane)
Определяет ортогональную проекцию на основе left, right, bottom, top, nearPlane, farPlane.
void QCameraLens::setPerspectiveProjection(float fieldOfView, float aspectRatio, float nearPlane, float farPlane)
Определяет перспективную проекцию на основе fieldOfView, aspectRatio, nearPlane, farPlane.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qt3drender-qcameralens.html