Класс QSpotLight
класс Qt3DRender::QSpotLightОборачивает объект источника направленного света в сцене Qt 3D. Подробнее...
| Заголовок: | #include <QSpotLight> |
| CMake: | find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| С момента: | Qt 5.5 |
| Инициализируется: | SpotLight |
| Наследует: | Qt3DRender::QAbstractLight |
Свойства
|
|
Открытые функции
| QSpotLight(Qt3DCore::QNode *parent = nullptr) | |
| float | constantAttenuation() const |
| float | cutOffAngle() const |
| float | linearAttenuation() const |
| QVector3D | localDirection() const |
| float | quadraticAttenuation() const |
Открытые слоты
| void | setConstantAttenuation(float value) |
| void | setCutOffAngle(float cutOffAngle) |
| void | setLinearAttenuation(float value) |
| void | setLocalDirection(const QVector3D &localDirection) |
| void | setQuadraticAttenuation(float value) |
Сигналы
| void | constantAttenuationChanged(float constantAttenuation) |
| void | cutOffAngleChanged(float cutOffAngle) |
| void | linearAttenuationChanged(float linearAttenuation) |
| void | localDirectionChanged(const QVector3D &localDirection) |
| void | quadraticAttenuationChanged(float quadraticAttenuation) |
Подробное описание
Источник направленного света излучает конус света в определённом направлении.
Источник направленного света использует три коэффициента затухания, чтобы описать, как интенсивность света уменьшается с расстоянием. Эти коэффициенты предназначены для совместного использования при расчёте общего затухания. Для материалов в Qt3D Extras используется следующая формула, где distance — расстояние от источника света до рендерируемой поверхности:
totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));
Пользовательские материалы могут интерпретировать эти коэффициенты по-разному.
Документация по свойствам
constantAttenuation : float
Задаёт постоянное затухание направленного света.
Примечание: Точное значение и использование этого свойства зависит от реализации материала.
Функции доступа:
| float | constantAttenuation() const |
| void | setConstantAttenuation(float value) |
Сигнал уведомления:
| void | constantAttenuationChanged(float constantAttenuation) |
cutOffAngle : float
Задаёт угол отсечения источника направленного света.
Примечание: Точное значение и использование этого свойства зависят от реализации материала.
Функции доступа:
| float | cutOffAngle() const |
| void | setCutOffAngle(float cutOffAngle) |
Сигнал уведомления:
| void | cutOffAngleChanged(float cutOffAngle) |
linearAttenuation : float
Задаёт линейное затухание направленного света.
Примечание: Точное значение и использование этого свойства зависят от реализации материала.
Функции доступа:
| float | linearAttenuation() const |
| void | setLinearAttenuation(float value) |
Сигнал уведомления:
| void | linearAttenuationChanged(float linearAttenuation) |
localDirection : QVector3D
Задаёт локальное направление источника направленного света.
Примечание: Точное значение и использование этого свойства зависят от реализации материала.
Функции доступа:
| QVector3D | localDirection() const |
| void | setLocalDirection(const QVector3D &localDirection) |
Сигнал уведомления:
| void | localDirectionChanged(const QVector3D &localDirection) |
quadraticAttenuation : float
Задаёт квадратичное затухание направленного света.
Примечание: Точное значение и использование этого свойства зависит от реализации материала.
Функции доступа:
| float | quadraticAttenuation() const |
| void | setQuadraticAttenuation(float value) |
Сигнал уведомления:
| void | quadraticAttenuationChanged(float quadraticAttenuation) |
Документация по функциям-членам
QSpotLight::QSpotLight(Qt3DCore::QNode *parent = nullptr)
Создаёт новый QSpotLight с указанным parent.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qt3drender-qspotlight.html