MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
TSLTerrainVSCompositorVisibility Class Reference
Inheritance diagram for TSLTerrainVSCompositorVisibility:

Detailed Description

A basic compositor, which stores the visibility of each point of the viewshed.

This compositor requires a TSLTerrainVSOutput object, in order to store results. This object must be initialised with the dataType TSLTerrainVSOutput::type TSLTerrainVSVisibility.

Public Member Functions

 TSLTerrainVSCompositorVisibility (TSLTerrainVSOutput *output)
 
virtual void setData (unsigned int x, unsigned int y, TSLTerrainVSVisibility visibility, double terrainHeight, const TSLTerrainVSAlgorithm::Parameters &viewshedParameters)
 
TSLTerrainVSVisibility getData (unsigned int x, unsigned int y)
 
virtual bool valid (const TSLTerrainVSAlgorithm::Parameters &params)
 
- Public Member Functions inherited from TSLTerrainVSCompositor
void inc ()
 
void dec ()
 

Additional Inherited Members

- Protected Member Functions inherited from TSLTerrainVSCompositor
 TSLTerrainVSCompositor (const TSLTerrainVSCompositor &other)
 
 TSLTerrainVSCompositor ()
 
virtual ~TSLTerrainVSCompositor ()
 

Constructor & Destructor Documentation

◆ TSLTerrainVSCompositorVisibility()

TSLTerrainVSCompositorVisibility::TSLTerrainVSCompositorVisibility ( TSLTerrainVSOutput * output)

Member Function Documentation

◆ getData()

TSLTerrainVSVisibility TSLTerrainVSCompositorVisibility::getData ( unsigned int x,
unsigned int y )

Query a value from the output data, as a visibility enum

◆ setData()

virtual void TSLTerrainVSCompositorVisibility::setData ( unsigned int x,
unsigned int y,
TSLTerrainVSVisibility visibility,
double terrainHeight,
const TSLTerrainVSAlgorithm::Parameters & viewshedParameters )
virtual

This method is called by the viewshed algorithm, each time a point has been processed.

This compositor will store the visibility argument in the output array. The other arguments will not be stored.

Parameters
xThe x offset of the point, from the bottom-left of the input data.
yThe y offset of the point, from the bottom-left of the input data.
visibilityAn enum which specifies whether this point is visible/not visible from the centre of the viewshed, or that there was no input data available for this point.
terrainHeightThe height of the terrain at this point, read from the input object.
viewshedParametersThe parameters of the current viewshed operation.

Implements TSLTerrainVSCompositor.

◆ valid()

virtual bool TSLTerrainVSCompositorVisibility::valid ( const TSLTerrainVSAlgorithm::Parameters & params)
virtual

This method will be called by the viewshed algorithm, to provide the compositor with a mechanism for initialisation, and an opportunite to terminate the viewshed calculation if required.

The map unit extent that the viewshed will be calculated for can be retrieved via params.m_viewShedMUExtent. This may not be the same as the input object's extent, or the requested extent (based on center point and maxRadius).

Parameters
paramsThe parameters of the viewshed operation.

The TSLTerrainVSCompositorVisibility object will always return true from this method. Any provided output object must be capable of recieving data for the entire input data extent.

Implements TSLTerrainVSCompositor.