16 #ifndef QGS3DMAPSETTINGS_H
17 #define QGS3DMAPSETTINGS_H
69 void resolveReferences(
const QgsProject &project );
148 void setBackgroundColor(
const QColor &color );
150 QColor backgroundColor()
const;
153 void setSelectionColor(
const QColor &color );
155 QColor selectionColor()
const;
165 void setTerrainVerticalScale(
double zScale );
167 double terrainVerticalScale()
const;
173 void setLayers(
const QList<QgsMapLayer *> &layers );
179 QList<QgsMapLayer *> layers()
const;
185 void setMapTileResolution(
int res );
191 int mapTileResolution()
const;
197 void setMaxTerrainScreenError(
float error );
206 float maxTerrainScreenError()
const;
212 void setMaxTerrainGroundError(
float error );
220 float maxTerrainGroundError()
const;
235 void setTerrainShadingEnabled(
bool enabled );
264 void setTerrainMapTheme(
const QString &theme );
279 void setRenderers(
const QList<QgsAbstract3DRenderer *> &renderers
SIP_TRANSFER );
281 QList<QgsAbstract3DRenderer *>
renderers()
const {
return mRenderers; }
289 void setSkybox(
bool enabled,
const QString &fileBase = QString(),
const QString &fileExtension = QString() );
298 void setShowTerrainBoundingBoxes(
bool enabled );
302 void setShowTerrainTilesInfo(
bool enabled );
310 void setShowCameraViewCenter(
bool enabled );
318 void setShowLabels(
bool enabled );
326 QList<QgsPointLightSettings>
pointLights()
const {
return mPointLights; }
332 void setPointLights(
const QList<QgsPointLightSettings> &pointLights );
344 void setFieldOfView(
const float fieldOfView );
363 void backgroundColorChanged();
365 void selectionColorChanged();
367 void layersChanged();
369 void terrainGeneratorChanged();
371 void terrainVerticalScaleChanged();
373 void mapTileResolutionChanged();
375 void maxTerrainScreenErrorChanged();
377 void maxTerrainGroundErrorChanged();
383 void terrainShadingChanged();
389 void terrainMapThemeChanged();
395 void renderersChanged();
398 void showTerrainBoundingBoxesChanged();
400 void showTerrainTilesInfoChanged();
406 void showCameraViewCenterChanged();
408 void showLabelsChanged();
414 void pointLightsChanged();
420 void fieldOfViewChanged();
431 QColor mBackgroundColor = Qt::black;
432 QColor mSelectionColor;
433 double mTerrainVerticalScale = 1;
434 std::unique_ptr<QgsTerrainGenerator> mTerrainGenerator;
435 int mMapTileResolution = 512;
436 float mMaxTerrainScreenError = 3.f;
437 float mMaxTerrainGroundError = 1.f;
438 bool mTerrainShadingEnabled =
false;
440 QString mTerrainMapTheme;
441 bool mShowTerrainBoundingBoxes =
false;
442 bool mShowTerrainTileInfo =
false;
443 bool mShowCameraViewCenter =
false;
444 bool mShowLabels =
false;
445 QList<QgsPointLightSettings> mPointLights;
446 float mFieldOfView = 45.0f;
447 QList<QgsMapLayerRef> mLayers;
448 QList<QgsAbstract3DRenderer *> mRenderers;
449 bool mSkyboxEnabled =
false;
450 QString mSkyboxFileBase;
451 QString mSkyboxFileExtension;
460 #endif // QGS3DMAPSETTINGS_H