16 #ifndef QGSTERRAINENTITY_P_H 17 #define QGSTERRAINENTITY_P_H 41 class QgsTerrainTextureGenerator;
45 class TerrainMapUpdateJobFactory;
53 class QgsTerrainEntity :
public QgsChunkedEntity
58 explicit QgsTerrainEntity(
int maxLevel,
const Qgs3DMapSettings &map, Qt3DCore::QNode *parent =
nullptr );
60 ~QgsTerrainEntity()
override;
65 QgsTerrainTextureGenerator *textureGenerator() {
return mTextureGenerator; }
70 Qt3DRender::QObjectPicker *terrainPicker()
const {
return mTerrainPicker; }
73 void onShowBoundingBoxesChanged();
74 void invalidateMapImages();
75 void onLayersChanged();
79 void connectToLayersRepaintRequest();
83 Qt3DRender::QObjectPicker *mTerrainPicker =
nullptr;
84 QgsTerrainTextureGenerator *mTextureGenerator =
nullptr;
87 std::unique_ptr<TerrainMapUpdateJobFactory> mUpdateJobFactory;
90 QList<QgsMapLayer *> mLayers;
96 class TerrainMapUpdateJob :
public QgsChunkQueueJob
100 TerrainMapUpdateJob( QgsTerrainTextureGenerator *textureGenerator, QgsChunkNode *mNode );
102 void cancel()
override;
105 void onTileReady(
int jobId,
const QImage &image );
108 QgsTerrainTextureGenerator *mTextureGenerator =
nullptr;
114 #endif // QGSTERRAINENTITY_P_H Base class for all map layer types.
3 Definition of the world
3 Base class for generators of terrain.