16 #ifndef QGSDEMTERRAINTILELOADER_P_H    17 #define QGSDEMTERRAINTILELOADER_P_H    30 #include <QtConcurrent/QtConcurrentRun>    31 #include <QFutureWatcher>    32 #include <QElapsedTimer>    48 class QgsDemTerrainTileLoader : 
public QgsTerrainTileLoader
    53     QgsDemTerrainTileLoader( QgsTerrainEntity *terrain, QgsChunkNode *node );
    55     Qt3DCore::QEntity *createEntity( Qt3DCore::QEntity *parent ) 
override;
    58     void onHeightMapReady( 
int jobId, 
const QByteArray &heightMap );
    63     QByteArray mHeightMap;
    76 class QgsDemHeightMapGenerator : 
public QObject
    86     ~QgsDemHeightMapGenerator() 
override;
    89     int render( 
int x, 
int y, 
int z );
    92     QByteArray renderSynchronously( 
int x, 
int y, 
int z );
    95     int resolution()
 const { 
return mResolution; }
    98     float heightAt( 
double x, 
double y );
   102     void heightMapReady( 
int jobId, 
const QByteArray &heightMap );
   105     void onFutureFinished();
   120     std::unique_ptr<QgsTerrainDownloader> mDownloader;
   125       QgsChunkNodeId tileId;
   127       QFuture<QByteArray> future;
   128       QFutureWatcher<QByteArray> *fw;
   132     QHash<QFutureWatcher<QByteArray>*, JobData> mJobs;
   135     QByteArray mDtmCoarseData;
   140 #endif // QGSDEMTERRAINTILELOADER_P_H A rectangle specified with double values. 
 
Represents a raster layer. 
 
Contains information about the context in which a coordinate transform is executed. 
 
3 Takes care of downloading terrain data from a publicly available data source. 
 
3 The class encapsulates tiling scheme (just like with WMTS / TMS / XYZ layers). 
 
Base class for raster data providers.