QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
|
3 More...
#include <qgsabstractmaterialsettings.h>
Public Types | |
enum | Property { Diffuse , Ambient , Warm , Cool , Specular } |
Data definable properties. More... | |
Public Member Functions | |
virtual | ~QgsAbstractMaterialSettings ()=default |
virtual void | addParametersToEffect (Qt3DRender::QEffect *effect) const =0 |
Adds parameters from the material to a destination effect. More... | |
virtual void | applyDataDefinedToGeometry (Qt3DCore::QGeometry *geometry, int vertexCount, const QByteArray &dataDefinedBytes) const |
Applies the data defined bytes, dataDefinedBytes, on the geometry by filling a specific vertex buffer that will be used by the shader. More... | |
virtual QgsAbstractMaterialSettings * | clone () const =0 |
Clones the material settings. More... | |
virtual int | dataDefinedByteStride () const |
Returns byte stride of the data defined colors,used to fill the vertex colors data defined buffer for rendering. More... | |
QgsPropertyCollection | dataDefinedProperties () const |
Returns the symbol material property collection, used for data defined overrides. More... | |
virtual QByteArray | dataDefinedVertexColorsAsByte (const QgsExpressionContext &expressionContext) const |
Returns byte array corresponding to the data defined colors depending of the expressionContext, used to fill the specific vertex buffer used for rendering the geometry. More... | |
const QgsPropertiesDefinition & | propertyDefinitions () const |
Returns a reference to the material properties definition, used for data defined overrides. More... | |
virtual void | readXml (const QDomElement &element, const QgsReadWriteContext &) |
Reads settings from a DOM element. More... | |
void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
Sets the material property collection, used for data defined overrides. More... | |
virtual QMap< QString, QString > | toExportParameters () const =0 |
Returns the parameters to be exported to .mtl file. More... | |
virtual Qt3DRender::QMaterial * | toMaterial (QgsMaterialSettingsRenderingTechnique technique, const QgsMaterialContext &context) const =0 |
Creates a new QMaterial object representing the material settings. More... | |
virtual QString | type () const =0 |
Returns the unique type name for the material. More... | |
virtual void | writeXml (QDomElement &element, const QgsReadWriteContext &) const |
Writes settings to a DOM element. More... | |
3
Abstract base class for material settings.
Definition at line 121 of file qgsabstractmaterialsettings.h.
Data definable properties.
Enumerator | |
---|---|
Diffuse | Diffuse color. |
Ambient | Ambient color (phong material) |
Warm | Warm color (gooch material) |
Cool | Cool color (gooch material) |
Specular | Specular color. |
Definition at line 196 of file qgsabstractmaterialsettings.h.
|
virtualdefault |
|
pure virtual |
Adds parameters from the material to a destination effect.
Implemented in QgsGoochMaterialSettings, QgsNullMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
|
virtual |
Applies the data defined bytes, dataDefinedBytes, on the geometry by filling a specific vertex buffer that will be used by the shader.
Reimplemented in QgsGoochMaterialSettings, and QgsPhongMaterialSettings.
Definition at line 57 of file qgsabstractmaterialsettings.cpp.
|
pure virtual |
Clones the material settings.
Caller takes ownership of the returned object.
Implemented in QgsGoochMaterialSettings, QgsNullMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
|
inlinevirtual |
Returns byte stride of the data defined colors,used to fill the vertex colors data defined buffer for rendering.
Reimplemented in QgsGoochMaterialSettings, and QgsPhongMaterialSettings.
Definition at line 245 of file qgsabstractmaterialsettings.h.
QgsPropertyCollection QgsAbstractMaterialSettings::dataDefinedProperties | ( | ) | const |
Returns the symbol material property collection, used for data defined overrides.
Definition at line 39 of file qgsabstractmaterialsettings.cpp.
|
virtual |
Returns byte array corresponding to the data defined colors depending of the expressionContext, used to fill the specific vertex buffer used for rendering the geometry.
Reimplemented in QgsGoochMaterialSettings, and QgsPhongMaterialSettings.
Definition at line 48 of file qgsabstractmaterialsettings.cpp.
const QgsPropertiesDefinition & QgsAbstractMaterialSettings::propertyDefinitions | ( | ) | const |
Returns a reference to the material properties definition, used for data defined overrides.
Definition at line 41 of file qgsabstractmaterialsettings.cpp.
|
virtual |
Reads settings from a DOM element.
Reimplemented in QgsGoochMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
Definition at line 20 of file qgsabstractmaterialsettings.cpp.
void QgsAbstractMaterialSettings::setDataDefinedProperties | ( | const QgsPropertyCollection & | collection | ) |
Sets the material property collection, used for data defined overrides.
Definition at line 34 of file qgsabstractmaterialsettings.cpp.
|
pure virtual |
Returns the parameters to be exported to .mtl file.
Implemented in QgsGoochMaterialSettings, QgsNullMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
|
pure virtual |
Creates a new QMaterial object representing the material settings.
The technique argument specifies the rendering technique which will be used with the returned material.
Implemented in QgsGoochMaterialSettings, QgsNullMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
|
pure virtual |
Returns the unique type name for the material.
Implemented in QgsGoochMaterialSettings, QgsNullMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
|
virtual |
Writes settings to a DOM element.
Reimplemented in QgsGoochMaterialSettings, QgsPhongMaterialSettings, QgsPhongTexturedMaterialSettings, and QgsSimpleLineMaterialSettings.
Definition at line 27 of file qgsabstractmaterialsettings.cpp.