QSpotLight 类

class Qt3DRender::QSpotLight

封装 Qt 3D 场景中的聚光灯对象。更多...

头文件 #include <QSpotLight>
CMakefind_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmakeQT += 3drender
由以下实例化 SpotLight
继承自 Qt3DRender::QAbstractLight

属性

公有函数

QSpotLight(Qt3DCore::QNode *parent = nullptr)
floatconstantAttenuation() const
floatcutOffAngle() const
floatlinearAttenuation() const
QVector3DlocalDirection() const
floatquadraticAttenuation() const

公有槽

voidsetConstantAttenuation(float value)
voidsetCutOffAngle(float cutOffAngle)
voidsetLinearAttenuation(float value)
voidsetLocalDirection(const QVector3D &localDirection)
voidsetQuadraticAttenuation(float value)

信号

voidconstantAttenuationChanged(float constantAttenuation)
voidcutOffAngleChanged(float cutOffAngle)
voidlinearAttenuationChanged(float linearAttenuation)
voidlocalDirectionChanged(const QVector3D &localDirection)
voidquadraticAttenuationChanged(float quadraticAttenuation)

详细描述

聚光灯是一种在特定方向上发出光锥的光源。

聚光灯使用三个衰减因子来描述光的强度随距离的变化。这些因子设计用于共同计算总衰减。对于 Qt3D Extras 中的材料,以下公式被使用,其中距离是光线到渲染表面的距离

totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));

自定义材料可以选择以不同的方式解释这些因素。

属性文档

constantAttenuation : 浮点

指定聚光灯光照的常量衰减。

注意:此属性的准确含义和使用取决于材料实现。

访问函数

floatconstantAttenuation() const
voidsetConstantAttenuation(浮点 value)

通知信号

voidconstantAttenuationChanged(浮点 constantAttenuation)

cutOffAngle : 浮点

指定聚光灯光照的截止角度。

注意:此属性的准确含义和使用取决于材料实现。

访问函数

floatcutOffAngle() const
voidsetCutOffAngle(浮点 cutOffAngle)

通知信号

voidcutOffAngleChanged(浮点 cutOffAngle)

linearAttenuation : 浮点

指定聚光灯光照的线性衰减。

注意:此属性的准确含义和使用取决于材料实现。

访问函数

floatlinearAttenuation() const
voidsetLinearAttenuation(浮点 value)

通知信号

voidlinearAttenuationChanged(浮点 linearAttenuation)

localDirection : QVector3D

指定聚光灯光照的本地方向。

注意:此属性的准确含义和使用取决于材料实现。

访问函数

QVector3DlocalDirection() const
voidsetLocalDirection(const QVector3D &localDirection)

通知信号

voidlocalDirectionChanged(const QVector3D &localDirection)

quadraticAttenuation : 浮点

指定聚光灯光照的二次衰减。

注意:此属性的准确含义和使用取决于材料实现。

访问函数

floatquadraticAttenuation() const
voidsetQuadraticAttenuation(浮点 value)

通知信号

voidquadraticAttenuationChanged(浮点 quadraticAttenuation)

成员函数文档

[显式] QSpotLight::QSpotLight(Qt3DCore::QNode *parent = nullptr)

使用指定的 parent 构造新的 QSpotLight。

© 2024 The Qt Company Ltd. 本文档中的文档贡献为各自所有者的版权。本文档依据自由软件基金会出版的 GNU 自由文档许可协议版本 1.3 的条款提供。Qt 及其相关标志是 The Qt Company Ltd. 在芬兰及/或其他国家和地区的商标。所有其他商标均为其各自所有者的财产。