Maria GDK 5.0.0.880
Documentation of native code in develop branch
Loading...
Searching...
No Matches
Maria::DrawObjectTileRenderer Class Reference

#include <MDrawObjectTileRenderer.h>

Classes

struct  DataGenerationInfo
 

Public Types

using DataGenerationLayers = std::unordered_map< std::string, DataGenerationInfo >
 

Public Member Functions

 DrawObjectTileRenderer (const std::shared_ptr< STK::ShaderProgramManager > &shaderManager, const std::shared_ptr< STK::FontManager > &fontManager, const std::shared_ptr< DrawObjectManager > &drawObjectManager, const std::shared_ptr< SystemTicker > &systemTicker, const std::shared_ptr< GeoUnitsSetting > &geoUnitsSetting)
 
void addDrawLayer (const std::string &id, const std::shared_ptr< DrawObjectStore > &drawObjectStore, const std::shared_ptr< Maria::StyleSet > &styleSet)
 
void setStyleSet (const std::string &layerId, const std::shared_ptr< Maria::StyleSet > &styleSet)
 
void updateStyling (const std::string &layerId, bool forceFullUpdate)
 
bool hasVisibleDrawObjects (const std::shared_ptr< RasterProjector > &rp) const
 
bool needsUpdate (const std::shared_ptr< Maria::RasterProjector > &vp, const DataGenerationLayers &dataGenerations) const
 
void renderDrawObjects (const std::shared_ptr< RasterProjector > &rp, TileLabelData &tileLabelData, DataGenerationLayers &genLayers)
 

Detailed Description

DrawObjectTileRenderer - Simple Mercator tile draw object renderer. This simplified draw object renderer can render area objects into mercator tiles. Does not support point objects, clustering or other projections than simple mercator.

Assumes that all draw object data has been pre-loaded in the draw object store.

This renderer is primarily used for generating texture tiles in the 3D terrain renderer.

Member Function Documentation

◆ needsUpdate()

bool DrawObjectTileRenderer::needsUpdate ( const std::shared_ptr< Maria::RasterProjector > &  vp,
const DataGenerationLayers &  dataGenerations 
) const

Check if objects have changed inside the given viewport. This will check against the provided data generation info as well as check if any objects have been added or deleted inside the area.

◆ renderDrawObjects()

void DrawObjectTileRenderer::renderDrawObjects ( const std::shared_ptr< RasterProjector > &  rp,
TileLabelData tileLabelData,
DataGenerationLayers &  genLayers 
)

Render all draw objects inside the rasterprojector. Will return a vector of internal DrawObject index ID's for all objects that were rendered. Also returns by reference separate text labels for objects that need them in tileLabelData.


The documentation for this class was generated from the following files: