16#ifndef QGSPOINTLIGHTSETTINGS_H
17#define QGSPOINTLIGHTSETTINGS_H
57 QColor
color()
const {
return mColor; }
86 QColor mColor = Qt::white;
87 float mIntensity = 1.0;
88 float mConstantAttenuation = 1.0f;
89 float mLinearAttenuation = 0.0f;
90 float mQuadraticAttenuation = 0.0f;
LightSourceType
Light source types for 3D scenes.
Base class for light sources in 3d scenes.
virtual Qgis::LightSourceType type() const =0
Returns the light source type.
virtual QgsLightSource * clone() const =0
Returns a copy of the light source.
Definition of a point light in a 3D map scene.
QgsPointLightSettings()=default
Construct a point light with default values.
QDomElement writeXml(QDomDocument &doc, const QgsReadWriteContext &context=QgsReadWriteContext()) const override
Writes the light source's configuration to a new DOM element and returns it.
Qt3DCore::QEntity * createEntity(const Qgs3DMapSettings &map, Qt3DCore::QEntity *parent) const override
Creates an entity representing the light source.
float quadraticAttenuation() const
Returns quadratic attenuation (A_2).
void setIntensity(float intensity)
Sets intensity of the light.
void setPosition(const QgsVector3D &pos)
Sets position of the light (in 3D map coordinates).
float linearAttenuation() const
Returns linear attenuation (A_1).
void setColor(const QColor &color)
Sets color of the light.
float intensity() const
Returns intensity of the light.
void readXml(const QDomElement &elem, const QgsReadWriteContext &context=QgsReadWriteContext()) override
Reads configuration from a DOM element previously written using writeXml().
void setLinearAttenuation(float value)
Sets linear attenuation (A_1).
void setConstantAttenuation(float value)
Sets constant attenuation (A_0).
QgsVector3D position() const
Returns position of the light (in 3D map coordinates).
void setQuadraticAttenuation(float value)
Sets quadratic attenuation (A_2).
float constantAttenuation() const
Returns constant attenuation (A_0).
QColor color() const
Returns color of the light.
A container for the context for various read/write operations on objects.
A 3D vector (similar to QVector3D) with the difference that it uses double precision instead of singl...
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)