QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
Public Member Functions | Static Public Member Functions | List of all members
QgsPhongTexturedMaterialSettings Class Reference

3 More...

#include <qgsphongtexturedmaterialsettings.h>

Inheritance diagram for QgsPhongTexturedMaterialSettings:
Inheritance graph
[legend]

Public Member Functions

 QgsPhongTexturedMaterialSettings ()=default
 Constructor for QgsPhongTexturedMaterialSettings. More...
 
void addParametersToEffect (Qt3DRender::QEffect *effect) const override
 Adds parameters from the material to a destination effect. More...
 
QColor ambient () const
 Returns ambient color component. More...
 
QgsPhongTexturedMaterialSettingsclone () const override
 Clones the material settings. More...
 
QString diffuseTexturePath () const
 Returns the diffuse texture path. More...
 
float opacity () const
 Returns the opacity of the surface. More...
 
bool operator== (const QgsPhongTexturedMaterialSettings &other) const
 
void readXml (const QDomElement &elem, const QgsReadWriteContext &context) override
 Reads settings from a DOM element. More...
 
bool requiresTextureCoordinates () const
 Returns true if the material requires texture coordinates to be generated during triangulation.quiresTextureCoordinates. More...
 
void setAmbient (const QColor &ambient)
 Sets ambient color component. More...
 
void setDiffuseTexturePath (const QString &path)
 Sets the path of the diffuse texture. More...
 
void setOpacity (float opacity)
 Sets opacity of the surface. More...
 
void setShininess (float shininess)
 Sets shininess of the surface. More...
 
void setSpecular (const QColor &specular)
 Sets specular color component. More...
 
void setTextureRotation (float rotation)
 Sets the texture rotation in degrees. More...
 
void setTextureScale (float scale)
 Sets the texture scale The texture scale changes the size of the displayed texture in the 3D scene If the texture scale is less than 1 the texture will be stretched. More...
 
float shininess () const
 Returns shininess of the surface. More...
 
QColor specular () const
 Returns specular color component. More...
 
float textureRotation () const
 Returns the texture rotation, in degrees. More...
 
float textureScale () const
 Returns the texture scale The texture scale changes the size of the displayed texture in the 3D scene If the texture scale is less than 1 the texture will be stretched. More...
 
QMap< QString, QString > toExportParameters () const override
 Returns the parameters to be exported to .mtl file. More...
 
Qt3DRender::QMaterial * toMaterial (QgsMaterialSettingsRenderingTechnique technique, const QgsMaterialContext &context) const override
 Creates a new QMaterial object representing the material settings. More...
 
QString type () const override
 Returns the unique type name for the material. More...
 
void writeXml (QDomElement &elem, const QgsReadWriteContext &context) const override
 Writes settings to a DOM element. More...
 
- Public Member Functions inherited from QgsAbstractMaterialSettings
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 QgsAbstractMaterialSettingsclone () 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 QgsPropertiesDefinitionpropertyDefinitions () 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...
 

Static Public Member Functions

static QgsAbstractMaterialSettingscreate ()
 Returns a new instance of QgsPhongTexturedMaterialSettings. More...
 
static bool supportsTechnique (QgsMaterialSettingsRenderingTechnique technique)
 Returns true if the specified technique is supported by the Phong material. More...
 

Additional Inherited Members

- Public Types inherited from QgsAbstractMaterialSettings
enum class  Property : int {
  Diffuse , Ambient , Warm , Cool ,
  Specular
}
 Data definable properties. More...
 

Detailed Description

3

A phong shading model with diffuse texture map.

Warning
This is not considered stable API, and may change in future QGIS releases. It is exposed to the Python bindings as a tech preview only.
Since
QGIS 3.16

Definition at line 35 of file qgsphongtexturedmaterialsettings.h.

Constructor & Destructor Documentation

◆ QgsPhongTexturedMaterialSettings()

QgsPhongTexturedMaterialSettings::QgsPhongTexturedMaterialSettings ( )
default

Member Function Documentation

◆ addParametersToEffect()

void QgsPhongTexturedMaterialSettings::addParametersToEffect ( Qt3DRender::QEffect *  effect) const
overridevirtual

Adds parameters from the material to a destination effect.

Implements QgsAbstractMaterialSettings.

Definition at line 199 of file qgsphongtexturedmaterialsettings.cpp.

◆ ambient()

QColor QgsPhongTexturedMaterialSettings::ambient ( ) const
inline

Returns ambient color component.

Definition at line 59 of file qgsphongtexturedmaterialsettings.h.

◆ clone()

QgsPhongTexturedMaterialSettings * QgsPhongTexturedMaterialSettings::clone ( ) const
overridevirtual

Clones the material settings.

Caller takes ownership of the returned object.

Implements QgsAbstractMaterialSettings.

Definition at line 60 of file qgsphongtexturedmaterialsettings.cpp.

◆ create()

QgsAbstractMaterialSettings * QgsPhongTexturedMaterialSettings::create ( )
static

Returns a new instance of QgsPhongTexturedMaterialSettings.

Definition at line 55 of file qgsphongtexturedmaterialsettings.cpp.

◆ diffuseTexturePath()

QString QgsPhongTexturedMaterialSettings::diffuseTexturePath ( ) const
inline

Returns the diffuse texture path.

See also
setDiffuseTexturePath()

Definition at line 72 of file qgsphongtexturedmaterialsettings.h.

◆ opacity()

float QgsPhongTexturedMaterialSettings::opacity ( ) const
inline

Returns the opacity of the surface.

Since
QGIS 3.28

Definition at line 96 of file qgsphongtexturedmaterialsettings.h.

◆ operator==()

bool QgsPhongTexturedMaterialSettings::operator== ( const QgsPhongTexturedMaterialSettings other) const
inline

Definition at line 136 of file qgsphongtexturedmaterialsettings.h.

◆ readXml()

void QgsPhongTexturedMaterialSettings::readXml ( const QDomElement &  element,
const QgsReadWriteContext  
)
overridevirtual

Reads settings from a DOM element.

Reimplemented from QgsAbstractMaterialSettings.

Definition at line 70 of file qgsphongtexturedmaterialsettings.cpp.

◆ requiresTextureCoordinates()

bool QgsPhongTexturedMaterialSettings::requiresTextureCoordinates ( ) const
inline

Returns true if the material requires texture coordinates to be generated during triangulation.quiresTextureCoordinates.

Definition at line 85 of file qgsphongtexturedmaterialsettings.h.

◆ setAmbient()

void QgsPhongTexturedMaterialSettings::setAmbient ( const QColor &  ambient)
inline

Sets ambient color component.

Definition at line 99 of file qgsphongtexturedmaterialsettings.h.

◆ setDiffuseTexturePath()

void QgsPhongTexturedMaterialSettings::setDiffuseTexturePath ( const QString &  path)
inline

Sets the path of the diffuse texture.

See also
diffuseTexturePath()

Definition at line 110 of file qgsphongtexturedmaterialsettings.h.

◆ setOpacity()

void QgsPhongTexturedMaterialSettings::setOpacity ( float  opacity)
inline

Sets opacity of the surface.

Since
QGIS 3.28

Definition at line 126 of file qgsphongtexturedmaterialsettings.h.

◆ setShininess()

void QgsPhongTexturedMaterialSettings::setShininess ( float  shininess)
inline

Sets shininess of the surface.

Definition at line 104 of file qgsphongtexturedmaterialsettings.h.

◆ setSpecular()

void QgsPhongTexturedMaterialSettings::setSpecular ( const QColor &  specular)
inline

Sets specular color component.

Definition at line 102 of file qgsphongtexturedmaterialsettings.h.

◆ setTextureRotation()

void QgsPhongTexturedMaterialSettings::setTextureRotation ( float  rotation)
inline

Sets the texture rotation in degrees.

Definition at line 120 of file qgsphongtexturedmaterialsettings.h.

◆ setTextureScale()

void QgsPhongTexturedMaterialSettings::setTextureScale ( float  scale)
inline

Sets the texture scale The texture scale changes the size of the displayed texture in the 3D scene If the texture scale is less than 1 the texture will be stretched.

Definition at line 117 of file qgsphongtexturedmaterialsettings.h.

◆ shininess()

float QgsPhongTexturedMaterialSettings::shininess ( ) const
inline

Returns shininess of the surface.

Definition at line 63 of file qgsphongtexturedmaterialsettings.h.

◆ specular()

QColor QgsPhongTexturedMaterialSettings::specular ( ) const
inline

Returns specular color component.

Definition at line 61 of file qgsphongtexturedmaterialsettings.h.

◆ supportsTechnique()

bool QgsPhongTexturedMaterialSettings::supportsTechnique ( QgsMaterialSettingsRenderingTechnique  technique)
static

Returns true if the specified technique is supported by the Phong material.

Definition at line 37 of file qgsphongtexturedmaterialsettings.cpp.

◆ textureRotation()

float QgsPhongTexturedMaterialSettings::textureRotation ( ) const

Returns the texture rotation, in degrees.

Definition at line 65 of file qgsphongtexturedmaterialsettings.cpp.

◆ textureScale()

float QgsPhongTexturedMaterialSettings::textureScale ( ) const
inline

Returns the texture scale The texture scale changes the size of the displayed texture in the 3D scene If the texture scale is less than 1 the texture will be stretched.

Definition at line 79 of file qgsphongtexturedmaterialsettings.h.

◆ toExportParameters()

QMap< QString, QString > QgsPhongTexturedMaterialSettings::toExportParameters ( ) const
overridevirtual

Returns the parameters to be exported to .mtl file.

Implements QgsAbstractMaterialSettings.

Definition at line 190 of file qgsphongtexturedmaterialsettings.cpp.

◆ toMaterial()

Qt3DRender::QMaterial * QgsPhongTexturedMaterialSettings::toMaterial ( QgsMaterialSettingsRenderingTechnique  technique,
const QgsMaterialContext context 
) const
overridevirtual

Creates a new QMaterial object representing the material settings.

The technique argument specifies the rendering technique which will be used with the returned material.

Implements QgsAbstractMaterialSettings.

Definition at line 96 of file qgsphongtexturedmaterialsettings.cpp.

◆ type()

QString QgsPhongTexturedMaterialSettings::type ( ) const
overridevirtual

Returns the unique type name for the material.

Implements QgsAbstractMaterialSettings.

Definition at line 32 of file qgsphongtexturedmaterialsettings.cpp.

◆ writeXml()

void QgsPhongTexturedMaterialSettings::writeXml ( QDomElement &  element,
const QgsReadWriteContext  
) const
overridevirtual

Writes settings to a DOM element.

Reimplemented from QgsAbstractMaterialSettings.

Definition at line 83 of file qgsphongtexturedmaterialsettings.cpp.


The documentation for this class was generated from the following files: