16#ifndef QGSMETALROUGHTEXTUREDMATERIALSETTINGS_H
17#define QGSMETALROUGHTEXTUREDMATERIALSETTINGS_H
40 QString
type()
const override;
151 return mBaseColorTexturePath == other.mBaseColorTexturePath
152 && mMetalnessTexturePath == other.mMetalnessTexturePath
153 && mRoughnessTexturePath == other.mRoughnessTexturePath
154 && mAmbientOcclusionTexturePath == other.mAmbientOcclusionTexturePath
161 QString mBaseColorTexturePath;
162 QString mMetalnessTexturePath;
163 QString mRoughnessTexturePath;
164 QString mAmbientOcclusionTexturePath;
166 double mTextureScale { 1.0 };
167 double mTextureRotation { 0.0 };
MaterialRenderingTechnique
Material rendering techniques.
Abstract base class for material settings.
virtual void writeXml(QDomElement &element, const QgsReadWriteContext &) const
Writes settings to a DOM element.
virtual void readXml(const QDomElement &element, const QgsReadWriteContext &)
Reads settings from a DOM element.
virtual QString type() const =0
Returns the unique type name for the material.
QgsPropertyCollection dataDefinedProperties() const
Returns the symbol material property collection, used for data defined overrides.
virtual bool requiresTextureCoordinates() const
Returns true if the material requires texture coordinates to be generated during triangulation.
void setTextureScale(double scale)
Sets the texture scale.
QgsMetalRoughTexturedMaterialSettings * clone() const override
Clones the material settings.
static QgsAbstractMaterialSettings * create()
Returns a new instance of QgsMetalRoughTexturedMaterialSettings.
QString roughnessTexturePath() const
Returns the path to the roughness texture map.
double textureRotation() const
Returns the texture rotation, in degrees.
double textureScale() const
Returns the texture scale.
void setTextureRotation(double rotation)
Sets the texture rotation, in degrees.
void setMetalnessTexturePath(const QString &path)
Sets the path to the metalness texture map.
QString ambientOcclusionTexturePath() const
Returns the path to the ambient occlusion texture map.
void setAmbientOcclusionTexturePath(const QString &path)
Sets the path to the ambient occlusion texture map.
QString metalnessTexturePath() const
Returns the path to the metalness texture map.
bool equals(const QgsAbstractMaterialSettings *other) const override
Returns true if this settings exactly matches an other settings.
QString baseColorTexturePath() const
Returns the path to the base color texture map.
static bool supportsTechnique(Qgis::MaterialRenderingTechnique technique)
Returns true if the specified technique is supported by the metal rough material.
void setBaseColorTexturePath(const QString &path)
Sets the path to the base color texture map.
bool operator==(const QgsMetalRoughTexturedMaterialSettings &other) const
void setRoughnessTexturePath(const QString &path)
Sets the path to the roughness texture map.
QgsMetalRoughTexturedMaterialSettings()=default
A container for the context for various read/write operations on objects.
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).