Viewshed 6.1.0
A C++ library for calculation of viewshed, inverse viewshed and visibility indices for both of those analyses.
Loading...
Searching...
No Matches
visibilityelevationdifferencetolocalhorizon.h
1#pragma once
2#include "viewshed_export.h"
3
4#include "abstractviewshedalgorithm.h"
5#include "losimportantvalues.h"
6
7namespace viewshed
8{
9 namespace visibilityalgorithm
10 {
11 class DLL_API ElevationDifferenceToLocalHorizon : public AbstractViewshedAlgorithm
12 {
13
14 public:
15 ElevationDifferenceToLocalHorizon( bool all = false, double invisibleValue = -9999,
16 double differenceWithoutHorizon = 0, double pointValue = 0 );
17 double result( std::shared_ptr<LoSImportantValues> losValues, std::shared_ptr<AbstractLoS> los ) override;
18
19 double pointValue() override { return mPointValue; };
20
21 const std::string name() override;
22
23 private:
24 bool mAllPoints = false;
25 double mInvisibleValue;
26 double mDifferenceWithoutHorizon;
27 double mPointValue;
28 };
29 } // namespace visibilityalgorithm
30} // namespace viewshed
Base class for all Viewshed Algorithms.
Definition abstractviewshedalgorithm.h:19
double pointValue() override
Value at important point, either view point for viewshed or target point for inverse viewshed.
Definition visibilityelevationdifferencetolocalhorizon.h:19
double result(std::shared_ptr< LoSImportantValues > losValues, std::shared_ptr< AbstractLoS > los) override
Extract resulting value based on LoSImportantValues and specific los.
Definition elevationdifferencetolocalhorizon.cpp:14
double pointValue() override
Value at important point, either view point for viewshed or target point for inverse viewshed.
Definition visibilityelevationdifferencetolocalhorizon.h:19