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

#include <MElevationAnalysisLayer.h>

Inheritance diagram for Maria::ElevationAnalysisLayer:
Maria::GeoLayer

Public Member Functions

 ElevationAnalysisLayer (const std::string &id, std::shared_ptr< STK::ShaderProgramManager > shaderManager, std::shared_ptr< ElevationData > elevation, int depth)
 
void addObserver (const std::shared_ptr< ElevationAnalysisObserver > &obs)
 
void removeObserver (const std::shared_ptr< ElevationAnalysisObserver > &obs)
 
void addMinMaxObserver (const std::shared_ptr< MinMaxElevationObserver > &obs)
 
void addLineOfSightObserver (const std::shared_ptr< LineOfSightObserver > &obs)
 
std::shared_ptr< MinMaxElevationObservergetMinMaxObserver (const std::string &name)
 
std::shared_ptr< LineOfSightObservergetLineOfSightObserver (const std::string &name)
 
std::shared_ptr< LineOfSightObservercreateLineOfSightObserver (const std::string &name)
 
std::shared_ptr< MinMaxElevationObservercreateMinMaxObserver (const std::string &name)
 
std::shared_ptr< LineOfSightObservergetOrCreateLineOfSightObserver (const std::string &name)
 
bool needsRedraw () const override
 Check if a layer requires a redraw on next frame. This will typicall be due to changed content, newly loaded data, etc.
 
void forceUpdate ()
 
void redraw (const std::shared_ptr< RasterProjector > &vp, const STK::Camera &cam, const STK::Viewport &glViewport) override
 
- Public Member Functions inherited from Maria::GeoLayer
 GeoLayer (const std::string &id, int depth)
 
void setClippingMargins (int left, int right, int top, int bottom)
 
void getClippingMargins (int &left, int &right, int &top, int &bottom)
 
bool needsClipping () const
 
void beginClipping (const STK::Viewport &glViewport)
 
void endClipping ()
 
int getDepth () const
 
const std::string & getId () const
 
void setOpacity (float opacity)
 
float getOpacity () const
 
bool isEnabled () const
 
void setEnabled (bool enabled)
 
void setLayerDirty (bool dirty)
 
bool isLayerDirty () const
 
void setPerformanceGraph (const std::shared_ptr< STK::PerformanceGraphs::Graph > &perf)
 
const std::shared_ptr< STK::PerformanceGraphs::Graph > & getPerformanceGraph () const
 
virtual bool update (const std::shared_ptr< RasterProjector > &viewport, double scale, float pixelScale)
 Update layer for rendering. This method should determine if there is anything to render in the layer, and prepare the layer for rendering.
 
virtual void redraw (const std::shared_ptr< RasterProjector > &vp, const STK::Camera &cam, const STK::Viewport &glViewport)=0
 
virtual void cleanupCaches (bool keepCurrentFrame)
 This method is called at regular intervals to clean up cached data, such as OpenGL textures, graphics buffers etc. Only data that can be reproduced automatically should be cleaned up by this method.
 
virtual bool needsRedraw () const
 Check if a layer requires a redraw on next frame. This will typicall be due to changed content, newly loaded data, etc.
 

Protected Member Functions

bool initShaders ()
 

Protected Attributes

std::shared_ptr< STK::ShaderProgramManager_shaderManager
 
std::unordered_map< std::string, std::shared_ptr< MinMaxElevationObserver > > _minMaxObservers
 
std::unordered_map< std::string, std::shared_ptr< LineOfSightObserver > > _losObservers
 
std::shared_ptr< STK::ShaderProgram_shader
 
std::shared_ptr< STK::VertexBufferP_vtx
 
std::shared_ptr< ElevationData_elevation
 
bool _dirty
 
- Protected Attributes inherited from Maria::GeoLayer
int _depth = -1
 
std::string _id
 
float _opacity = 1.0f
 
bool _enabled = true
 
int _clipLeft = 0
 
int _clipRight = 0
 
int _clipTop = 0
 
int _clipBottom = 0
 
std::shared_ptr< STK::PerformanceGraphs::Graph_perfGraph
 

Detailed Description

ElevationAnalysisLayer - Visualization of elevation data

Member Function Documentation

◆ needsRedraw()

bool Maria::ElevationAnalysisLayer::needsRedraw ( ) const
inlineoverridevirtual

Check if a layer requires a redraw on next frame. This will typicall be due to changed content, newly loaded data, etc.

Returns

Reimplemented from Maria::GeoLayer.

◆ redraw()

void ElevationAnalysisLayer::redraw ( const std::shared_ptr< RasterProjector > &  vp,
const STK::Camera cam,
const STK::Viewport glViewport 
)
overridevirtual

Implements Maria::GeoLayer.


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