16#ifndef QGSMESH3DSYMBOL_H
17#define QGSMESH3DSYMBOL_H
24#include <Qt3DRender/QCullFace>
67 QString
type()
const override {
return "mesh"; }
78 bool isEnabled() const;
85 void setEnabled(
bool enabled );
99 void setCullingMode( const
Qgs3DTypes::CullingMode &mode );
136 bool smoothedTriangles()
const;
143 void setSmoothedTriangles(
bool smoothTriangles );
150 bool wireframeEnabled()
const;
157 void setWireframeEnabled(
bool wireframeEnabled );
164 double wireframeLineWidth()
const;
171 void setWireframeLineWidth(
double wireframeLineWidth );
178 QColor wireframeLineColor()
const;
185 void setWireframeLineColor(
const QColor &wireframeLineColor );
192 double verticalScale()
const;
199 void setVerticalScale(
double verticalScale );
220 QColor singleMeshColor()
const;
227 void setSingleMeshColor(
const QColor &singleMeshColor );
248 int verticalDatasetGroupIndex()
const;
255 void setVerticalDatasetGroupIndex(
int verticalDatasetGroupIndex );
262 bool isVerticalMagnitudeRelative()
const;
269 void setIsVerticalMagnitudeRelative(
bool isVerticalMagnitudeRelative );
276 bool arrowsEnabled()
const;
283 void setArrowsEnabled(
bool arrowsEnabled );
290 double arrowsSpacing()
const;
297 void setArrowsSpacing(
double arrowsSpacing );
306 int maximumTextureSize()
const;
315 void setMaximumTextureSize(
int maximumTextureSize );
322 bool arrowsFixedSize()
const;
329 void setArrowsFixedSize(
bool arrowsFixedSize );
337 int levelOfDetailIndex()
const;
345 void setLevelOfDetailIndex(
int lod );
357 float mHeight = 0.0f;
358 std::unique_ptr<QgsAbstractMaterialSettings> mMaterialSettings;
359 bool mAddBackFaces =
false;
361 bool mEnabled =
true;
366 bool mSmoothedTriangles =
false;
367 bool mWireframeEnabled =
false;
368 double mWireframeLineWidth = 1.0;
369 QColor mWireframeLineColor = Qt::darkGray;
370 int mLevelOfDetailIndex = 0;
373 double mVerticalScale = 1.0;
374 int mVerticalDatasetGroupIndex = -1;
375 bool mIsVerticalMagnitudeRelative =
false;
380 QColor mSingleColor = Qt::darkGreen;
383 bool mArrowsEnabled =
false;
384 double mArrowsSpacing = 25;
385 bool mArrowsFixedSize =
false;
386 QColor mArrowsColor = Qt::yellow;
387 int mMaximumTextureSize = 1024;
Provides global constants and enumerations for use throughout the application.
AltitudeClamping
Altitude clamping.
@ Absolute
Elevation is taken directly from feature and is independent of terrain height (final elevation = feat...
Defines enumerations and other auxiliary types for QGIS 3D.
CullingMode
Triangle culling mode.
@ NoCulling
Will render both front and back faces of triangles.
Abstract base class for 3D symbols that are used by VectorLayer3DRenderer objects.
virtual QgsAbstract3DSymbol * clone() const =0
Returns a new instance of the symbol with the same settings.
Abstract base class for material settings.
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
3D symbol that draws mesh geometry as planar triangles.
void setAddBackFaces(bool add)
Sets whether also triangles facing the other side will be created.
QgsMesh3DSymbol()
Constructor for QgsMesh3DSymbol.
QString type() const override
Returns identifier of symbol type. Each 3D symbol implementation should return a different type.
void setHeight(float height)
Sets height (altitude) of the symbol (in map units).
Qgis::AltitudeClamping altitudeClamping() const
Returns method that determines altitude (whether to clamp to feature to terrain).
bool addBackFaces() const
Returns whether also triangles facing the other side will be created.
void setAltitudeClamping(Qgis::AltitudeClamping altClamping)
Sets method that determines altitude (whether to clamp to feature to terrain).
float height() const
Returns height (altitude) of the symbol (in map units).
ZValueType
How to render the Z value of the mesh.
RenderingStyle
How to render the color of the mesh.
@ SingleColor
Render the mesh with a single color.
~QgsMesh3DSymbol() override
A container for the context for various read/write operations on objects.
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)