A base class for the Analysis classes that determine visible and non-visible areas in a scene view. More...
Header: | #include <Viewshed.h> |
Since: | Esri::ArcGISRuntime 100.2 |
Inherits: | Esri::ArcGISRuntime::Analysis |
Inherited By: | Esri::ArcGISRuntime::GeoElementViewshed and Esri::ArcGISRuntime::LocationViewshed |
Public Functions
virtual | ~Viewshed() override |
double | horizontalAngle() const |
bool | isFrustumOutlineVisible() const |
double | maxDistance() const |
double | minDistance() const |
void | setFrustumOutlineVisible(bool visible) |
void | setHorizontalAngle(double horizontalAngle) |
void | setMaxDistance(double maxDistance) |
void | setMinDistance(double minDistance) |
void | setVerticalAngle(double verticalAngle) |
double | verticalAngle() const |
Static Public Members
QColor | frustumOutlineColor() |
QColor | obstructedColor() |
void | setFrustumOutlineColor(const QColor &frustumOutlineColor) |
void | setObstructedColor(const QColor &obstructedColor) |
void | setVisibleColor(const QColor &visibleColor) |
QColor | visibleColor() |
Detailed Description
Visible and non-visible areas are determined for an area defined by an observer location, horizontal and vertical view angles, and a minimum/maximum distance range. These properties define a frustum (3D solid) inside of which visibility is calculated.
The minimum distance allows you to exclude obstacles close to the observer (the corner of a building, for example). Since terrain and other obstacles between the observer and the specified minimum distance are completely excluded from the analysis, this value should be relatively small.
Visibility is not evaluated beyond the maximum distance specified. This can be used to model factors that restrict the visible distance.
Relevant samples:
- Viewshed (location): Perform a viewshed analysis from a defined vantage point.
Member Function Documentation
[override virtual]
Viewshed::~Viewshed()
Destructor.
[static]
QColor Viewshed::frustumOutlineColor ()
Returns the color used to render the frustum outline.
The frustum (3D solid) within which visibility is evaluated can be symbolized with a specified outline color.
See also setFrustumOutlineColor().
double Viewshed::horizontalAngle () const
Returns the horizontal angle of the observer's field of vision.
Visible and non-visible areas are determined for an area defined by an observer location, horizontal and vertical view angles, and a minimum/maximum distance range. These properties define a frustum (3D solid) inside of which visibility is calculated. The horizontal angle must be greater than zero to define a valid frustum and is constrained to a maximum of 360 degrees.
See also setHorizontalAngle().
bool Viewshed::isFrustumOutlineVisible () const
Returns a bool
that determines whether or not the Viewshed frustum is visible.
The frustum visibility can be controlled for individual Viewsheds.
double Viewshed::maxDistance () const
Returns the maximum distance from the observer at which visibility will be evaluated.
Visibility is not evaluated beyond the maximum distance specified. This can be used to model factors that restrict the visible distance.
See also setMaxDistance().
double Viewshed::minDistance () const
Returns the minimum distance from the observer at which visibility will be evaluated.
The minimum distance allows you to exclude obstacles close to the observer (the corner of a building, for example). Since terrain and other obstacles between the observer and the specified minimum distance are completely excluded from the analysis, this value should be relatively small.
See also setMinDistance().
[static]
QColor Viewshed::obstructedColor ()
Returns the color with which to render non-visible areas.
Areas of the scene view that are not visible from the observer location and within the defined frustum will be rendered using the specified color.
See also setObstructedColor().
[static]
void Viewshed::setFrustumOutlineColor (const QColor &frustumOutlineColor )
Sets the color used to render the frustum outline.
- frustumOutlineColor - The frustum outline color.
The frustum (3D solid) within which visibility is evaluated can be symbolized with a specified outline color.
See also frustumOutlineColor().
void Viewshed::setFrustumOutlineVisible (bool visible)
Sets the frustumOutlineVisible to visible.
See also isFrustumOutlineVisible.
void Viewshed::setHorizontalAngle (double horizontalAngle )
Sets the horizontalAngle to horizontalAngle.
See also horizontalAngle.
void Viewshed::setMaxDistance (double maxDistance )
Sets the maxDistance to maxDistance.
See also maxDistance.
void Viewshed::setMinDistance (double minDistance )
Sets the minDistance to minDistance.
See also minDistance.
[static]
void Viewshed::setObstructedColor (const QColor &obstructedColor )
Sets the color with which non-visible areas of all viewsheds will be rendered.
- obstructedColor - The color used to display non-visible areas of a viewshed.
Areas of the scene view that are visible from the observer location and within the frustum defined for the viewshed analysis will be rendered using the specified color.
See also obstructedColor().
void Viewshed::setVerticalAngle (double verticalAngle )
Sets the verticalAngle to verticalAngle.
See also verticalAngle.
[static]
void Viewshed::setVisibleColor (const QColor &visibleColor )
Sets the color with which visible areas of all viewsheds will be rendered.
- visibleColor - The color used to display visible areas of a viewshed.
Areas of the scene view that are visible from the observer location and within the frustum defined for the viewshed analysis will be rendered using the specified color.
See also visibleColor().
double Viewshed::verticalAngle () const
Returns the vertical angle of the observer's field of vision.
Visible and non-visible areas are determined for an area defined by an observer location, horizontal and vertical view angles, and a minimum/maximum distance range. These properties define a frustum (3D solid) inside of which visibility is calculated. The vertical angle must be greater than zero to define a valid frustum and is constrained to a maximum of 360 degrees.
See also setVerticalAngle().
[static]
QColor Viewshed::visibleColor ()
Returns the color with which to render visible areas.
Areas of the scene view that are visible from the observer location and within the defined frustum will be rendered using the specified color.
See also setVisibleColor().