QSpotLight Class
(Qt3DRender::QSpotLight)Encapsulate a Spot Light object in a Qt 3D scene. More...
Header: | #include <QSpotLight> |
qmake: | QT += 3drender |
Since: | Qt 5.5 |
Instantiated By: | SpotLight |
Inherits: | Qt3DRender::QAbstractLight |
Properties
|
|
- 3 properties inherited from Qt3DRender::QAbstractLight
- 1 property inherited from Qt3DCore::QComponent
- 3 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject
Public Functions
QSpotLight(Qt3DCore::QNode *parent = nullptr) | |
float | constantAttenuation() const |
float | cutOffAngle() const |
float | linearAttenuation() const |
QVector3D | localDirection() const |
float | quadraticAttenuation() const |
- 3 public functions inherited from Qt3DRender::QAbstractLight
- 2 public functions inherited from Qt3DCore::QComponent
- 13 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject
Public Slots
void | setConstantAttenuation(float value) |
void | setCutOffAngle(float cutOffAngle) |
void | setLinearAttenuation(float value) |
void | setLocalDirection(const QVector3D &localDirection) |
void | setQuadraticAttenuation(float value) |
- 2 public slots inherited from Qt3DRender::QAbstractLight
- 1 public slot inherited from Qt3DCore::QComponent
- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
Signals
void | constantAttenuationChanged(float constantAttenuation) |
void | cutOffAngleChanged(float cutOffAngle) |
void | linearAttenuationChanged(float linearAttenuation) |
void | localDirectionChanged(const QVector3D &localDirection) |
void | quadraticAttenuationChanged(float quadraticAttenuation) |
- 2 signals inherited from Qt3DRender::QAbstractLight
- 3 signals inherited from Qt3DCore::QComponent
- 4 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject
Static Public Members
const QMetaObject | staticMetaObject |
- 9 static public members inherited from QObject
Additional Inherited Members
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject
Detailed Description
Encapsulate a Spot Light object in a Qt 3D scene.
A spotlight is a light source that emits a cone of light in a particular direction.
A spotlight uses three attenuation factors to describe how the intensity of the light decreases over distance. These factors are designed to be used together in calcuating total attenuation. For the materials in Qt3D Extras the following formula is used, where distance is the distance from the light to the surface being rendered:
totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));
Custom materials may choose to interpret these factors differently.
Property Documentation
constantAttenuation : float
Specifies the constant attenuation of the spot light
Access functions:
float | constantAttenuation() const |
void | setConstantAttenuation(float value) |
Notifier signal:
void | constantAttenuationChanged(float constantAttenuation) |
cutOffAngle : float
Specifies the cut off angle of the spot light
Access functions:
float | cutOffAngle() const |
void | setCutOffAngle(float cutOffAngle) |
Notifier signal:
void | cutOffAngleChanged(float cutOffAngle) |
linearAttenuation : float
Specifies the linear attenuation of the spot light
Access functions:
float | linearAttenuation() const |
void | setLinearAttenuation(float value) |
Notifier signal:
void | linearAttenuationChanged(float linearAttenuation) |
localDirection : QVector3D
Specifies the local direction of the spot light
Access functions:
QVector3D | localDirection() const |
void | setLocalDirection(const QVector3D &localDirection) |
Notifier signal:
void | localDirectionChanged(const QVector3D &localDirection) |
quadraticAttenuation : float
Specifies the quadratic attenuation of the spot light
Access functions:
float | quadraticAttenuation() const |
void | setQuadraticAttenuation(float value) |
Notifier signal:
void | quadraticAttenuationChanged(float quadraticAttenuation) |
Member Function Documentation
QSpotLight::QSpotLight(Qt3DCore::QNode *parent = nullptr)
Constructs a new QSpotLight with the specified parent.
© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.