17#include "moc_qgsdemterraingenerator.cpp" 
   32  delete mHeightMapGenerator;
 
 
   49  mTransformContext = context;
 
 
   58  cloned->mLayer = mLayer;
 
   59  cloned->mResolution = mResolution;
 
   60  cloned->mSkirtHeight = mSkirtHeight;
 
   62  cloned->updateGenerator();
 
 
   79  if ( mHeightMapGenerator )
 
   80    return mHeightMapGenerator->heightAt( x, y );
 
 
   97void QgsDemTerrainGenerator::updateGenerator()
 
  107    delete mHeightMapGenerator;
 
  108    mHeightMapGenerator = 
new QgsDemHeightMapGenerator( dem, 
mTerrainTilingScheme, mResolution, mTransformContext );
 
  114    delete mHeightMapGenerator;
 
  115    mHeightMapGenerator = 
nullptr;
 
Rendering context for preparation of 3D entities.
 
static QgsRectangle tryReprojectExtent2D(const QgsRectangle &extent, const QgsCoordinateReferenceSystem &crs1, const QgsCoordinateReferenceSystem &crs2, const QgsCoordinateTransformContext &context)
Reprojects extent from crs1 to crs2 coordinate reference system with context context.
 
Represents a coordinate reference system (CRS).
 
bool isValid() const
Returns whether this CRS is correctly initialized and usable.
 
Contains information about the context in which a coordinate transform is executed.
 
Implementation of terrain generator that uses a raster layer with DEM to build terrain.
 
~QgsDemTerrainGenerator() override
 
QgsRectangle rootChunkExtent() const override
extent of the terrain's root chunk in terrain's CRS
 
static QgsTerrainGenerator * create()
Creates a new instance of a QgsDemTerrainGenerator object.
 
float heightAt(double x, double y, const Qgs3DRenderContext &context) const override
Returns height at (x,y) in map's CRS.
 
Type type() const override
What texture generator implementation is this.
 
QgsTerrainGenerator * clone() const override
Makes a copy of the current instance.
 
void setCrs(const QgsCoordinateReferenceSystem &crs, const QgsCoordinateTransformContext &context) override
Sets the CRS associated with the terrain.
 
QgsRasterLayer * layer() const
Returns raster layer with elevation model to be used for terrain generation.
 
void setExtent(const QgsRectangle &extent) override
sets the extent of the terrain in terrain's CRS
 
QgsCoordinateReferenceSystem crs() const override
Returns CRS of the terrain.
 
QgsChunkLoader * createChunkLoader(QgsChunkNode *node) const override
 
void setLayer(QgsRasterLayer *layer)
Sets raster layer with elevation model to be used for terrain generation.
 
QgsDemTerrainGenerator()=default
 
Represents a raster layer.
 
A rectangle specified with double values.
 
QgsRectangle intersect(const QgsRectangle &rect) const
Returns the intersection with the given rectangle.
 
Base class for generators of terrain.
 
Type
Enumeration of the available terrain generators.
 
@ Dem
Terrain is built from raster layer with digital elevation model.
 
QgsTilingScheme mTerrainTilingScheme
Tiling scheme of the terrain.
 
QgsTerrainEntity * mTerrain
 
virtual void setTerrain(QgsTerrainEntity *t)
Sets terrain entity for the generator (does not transfer ownership)
 
Encapsulates tiling schemes (just like with WMTS / TMS / XYZ layers).
 
QgsRectangle tileToExtent(int x, int y, int z) const
Returns map coordinates of the extent of a tile.
 
const QgsCoordinateReferenceSystem & crs