18#ifndef QGSTILEDSCENELAYERRENDERER_H 
   19#define QGSTILEDSCENELAYERRENDERER_H 
   28#include <QElapsedTimer> 
   88    void renderPrimitive( 
const tinygltf::Model &model,
 
   89                          const tinygltf::Primitive &primitive,
 
   92                          const QMatrix4x4 *gltfLocalTransform,
 
   93                          const QString &contentUri,
 
   96    void renderTrianglePrimitive( 
const tinygltf::Model &model,
 
   97                                  const tinygltf::Primitive &primitive,
 
  100                                  const QMatrix4x4 *gltfLocalTransform,
 
  101                                  const QString &contentUri,
 
  104    void renderLinePrimitive( 
const tinygltf::Model &model,
 
  105                              const tinygltf::Primitive &primitive,
 
  108                              const QMatrix4x4 *gltfLocalTransform,
 
  109                              const QString &contentUri,
 
  114    std::unique_ptr< QgsTiledSceneRenderer > mRenderer;
 
  115    bool mRenderTileBorders = 
false;
 
  117    QList< QgsMapClippingRegion > mClippingRegions;
 
  125    enum class PrimitiveType
 
  134      QPolygonF coordinates;
 
  136      QPair< int, int > textureId { -1, -1 };
 
  137      float textureCoords[6];
 
  140    QVector< PrimitiveData > mPrimitiveData;
 
  142    int mCurrentModelId = 0;
 
  143    QHash< QPair< int, int >, QImage > mTextures;
 
  148      bool hasContent = 
false;
 
  151    QVector< TileDetails > mTileDetails;
 
  153    std::unique_ptr<QgsFeedback> mFeedback;
 
  154    QSet< int > mWarnedPrimitiveTypes;
 
  156    QElapsedTimer mElapsedTimer;
 
  158    bool mEnableProfile = 
false;
 
  159    quint64 mPreparationTime = 0;
 
 
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
 
Represents a coordinate reference system (CRS).
 
Base class for feedback objects to be used for cancellation of something running in a worker thread.
 
A map clipping region (in map coordinates and CRS).
 
Base class for utility classes that encapsulate information necessary for rendering of map layers.
 
virtual bool render()=0
Do the rendering (based on data stored in the class).
 
virtual bool forceRasterRender() const
Returns true if the renderer must be rendered to a raster paint device (e.g.
 
virtual Qgis::MapLayerRendererFlags flags() const
Returns flags which control how the map layer rendering behaves.
 
Contains information about the context of a rendering operation.
 
Represents a bounding volume for a tiled scene.
 
An index for tiled scene data providers.
 
Implementation of threaded 2D rendering for tiled scene layers.
 
QgsFeedback * feedback() const override
Access to feedback object of the layer renderer (may be nullptr)
 
~QgsTiledSceneLayerRenderer()
 
Represents a map layer supporting display of tiled scene objects.
 
Encapsulates the render context for a 2D tiled scene rendering operation.
 
Abstract base class for 2d tiled scene renderers.
 
Tiled scene data request.
 
Represents an individual tile from a tiled scene data source.
 
A 3D vector (similar to QVector3D) with the difference that it uses double precision instead of singl...