QGIS API Documentation  3.22.4-Białowieża (ce8e65e95e)
qgs3dmapexportsettings.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgs3dmapexportsettings.h
3  --------------------------------------
4  Date : July 2020
5  Copyright : (C) 2020 by Belgacem Nedjima
6  Email : gb underscore nedjima at esi dot dz
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGS3DMAPEXPORTSETTINGS_H
17 #define QGS3DMAPEXPORTSETTINGS_H
18 
19 #include "qgis_3d.h"
20 
21 #include <QString>
22 #include <QObject>
23 #include <QDir>
24 
30 class _3D_EXPORT Qgs3DMapExportSettings
31 {
32  public:
35 
38 
40  QString sceneName() const { return mSceneName; }
42  QString sceneFolderPath() const { return mSceneFolderPath; }
44  int terrrainResolution() const { return mTerrainResolution; }
46  bool smoothEdges() const { return mSmoothEdges; }
48  bool exportNormals() const { return mExportNormals; }
50  bool exportTextures() const { return mExportTextures; }
52  int terrainTextureResolution() const { return mTerrainTextureResolution; }
54  float scale() const { return mScale; }
55 
57  void setSceneName( const QString &sceneName ) { mSceneName = sceneName; }
59  void setSceneFolderPath( const QString &sceneFolderPath ) { mSceneFolderPath = sceneFolderPath; }
61  void setTerrainResolution( int resolution ) { mTerrainResolution = resolution; }
63  void setSmoothEdges( bool smoothEdges ) { mSmoothEdges = smoothEdges; }
65  void setExportNormals( bool exportNormals ) { mExportNormals = exportNormals; }
67  void setExportTextures( bool exportTextures ) { mExportTextures = exportTextures; }
69  void setTerrainTextureResolution( int resolution ) { mTerrainTextureResolution = resolution; }
71  void setScale( float scale ) { mScale = scale; }
72 
73  private:
74  QString mSceneName = QString( "Scene" );
75  QString mSceneFolderPath = QDir::homePath();
76  int mTerrainResolution = 128;
77  bool mSmoothEdges = false;
78  bool mExportNormals = true;
79  bool mExportTextures = false;
80  int mTerrainTextureResolution = 512;
81  float mScale = 1.0f;
82 };
83 
84 #endif // QGS3DMAPEXPORTSETTINGS_H
Manages the various settings the user can choose from when exporting a 3D scene 3.
void setScale(float scale)
Sets the scale of exported model.
void setTerrainResolution(int resolution)
Sets the terrain resolution.
bool exportNormals() const
Returns whether normals will be exported.
void setExportTextures(bool exportTextures)
Sets whether textures will be exported.
int terrrainResolution() const
Returns the terrain resolution.
void setSmoothEdges(bool smoothEdges)
Sets whether triangles edges will look smooth.
void setSceneName(const QString &sceneName)
Sets the scene name.
QString sceneFolderPath() const
Returns the scene folder path.
float scale() const
Returns the scale of the exported model.
int terrainTextureResolution() const
Returns the terrain texture resolution.
void setTerrainTextureResolution(int resolution)
Sets the terrain texture resolution.
void setExportNormals(bool exportNormals)
Sets whether normals should be exported.
void setSceneFolderPath(const QString &sceneFolderPath)
Sets the scene's .obj file folder path.
QString sceneName() const
Returns the scene name.
bool smoothEdges() const
Returns whether triangles edges will look smooth.
bool exportTextures() const
Returns whether textures will be exported.