QGIS API Documentation  3.21.0-Master (5b68dc587e)
qgsskyboxsettings.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsskyboxsettings.h
3  --------------------------------------
4  Date : August 2020
5  Copyright : (C) 2020 by Belgacem Nedjima
6  Email : gb uderscore 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 QGSSKYBOXSETTINGS_H
17 #define QGSSKYBOXSETTINGS_H
18 
19 #include <QString>
20 #include <QMap>
21 
22 #include "qgis_3d.h"
23 #include "qgsskyboxentity.h"
24 
26 class QDomElement;
27 
28 #define SIP_NO_FILE
29 
36 class _3D_EXPORT QgsSkyboxSettings
37 {
38  public:
40  QgsSkyboxSettings() = default;
42  QgsSkyboxSettings( const QgsSkyboxSettings &other );
44  QgsSkyboxSettings &operator=( QgsSkyboxSettings const &rhs );
45 
47  void readXml( const QDomElement &element, const QgsReadWriteContext &context );
49  void writeXml( QDomElement &element, const QgsReadWriteContext &context ) const;
50 
52  QgsSkyboxEntity::SkyboxType skyboxType() const { return mSkyboxType; }
54  void setSkyboxType( QgsSkyboxEntity::SkyboxType type ) { mSkyboxType = type; }
55 
57  QString panoramicTexturePath() const { return mPanoramicTexturePath; }
59  void setPanoramicTexturePath( const QString &texturePath ) { mPanoramicTexturePath = texturePath; }
60 
65  QMap<QString, QString> cubeMapFacesPaths() const { return mCubeMapFacesPaths; }
66 
71  void setCubeMapFace( const QString &face, const QString &path ) { mCubeMapFacesPaths[face] = path; }
72 
73  private:
74  QgsSkyboxEntity::SkyboxType mSkyboxType;
75  //
76  QString mPanoramicTexturePath;
77  //
78  QMap<QString, QString> mCubeMapFacesPaths;
79 };
80 
81 #endif // QGSSKYBOXSETTINGS_H
The class is used as a container of context for various read/write operations on other objects.
SkyboxType
Skybox type enumeration.
Contains the configuration of a skybox entity.
void setSkyboxType(QgsSkyboxEntity::SkyboxType type)
Sets the type of the skybox.
QgsSkyboxSettings()=default
default constructor
QgsSkyboxEntity::SkyboxType skyboxType() const
Returns the type of the skybox.
void setPanoramicTexturePath(const QString &texturePath)
Sets the panoramic texture path of a skybox of type "Panoramic skybox".
void setCubeMapFace(const QString &face, const QString &path)
Sets a face of one of the skybox 6 textures The face parameter needs to be one of the followings: "po...
QString panoramicTexturePath() const
Returns the panoramic texture path of a skybox of type "Panormaic skybox".
QMap< QString, QString > cubeMapFacesPaths() const
Returns a map containing the path of each texture specified by the user.