Skip To Content ArcGIS for Developers Sign In Dashboard

LocationViewshed Class

class Esri::ArcGISRuntime::LocationViewshed

An analysis object that renders a viewshed for a specified point location. More...

Header: #include <LocationViewshed>
Since: Esri::ArcGISRuntime 100.2
Inherits: Esri::ArcGISRuntime::Viewshed

This class was introduced in Esri::ArcGISRuntime 100.2.

Public Functions

LocationViewshed(const Esri::ArcGISRuntime::Point &location, double heading, double pitch, double horizontalAngle, double verticalAngle, double minDistance, double maxDistance, QObject *parent = nullptr)
LocationViewshed(const Esri::ArcGISRuntime::Camera &camera, double minDistance, double maxDistance, QObject *parent = nullptr)
virtual ~LocationViewshed() override
double heading() const
Esri::ArcGISRuntime::Point location() const
double pitch() const
void setHeading(double heading)
void setLocation(const Esri::ArcGISRuntime::Point &location)
void setPitch(double pitch)
void updateFromCamera(const Esri::ArcGISRuntime::Camera &camera)

Detailed Description

LocationViewshed determines visible and non-visible areas in a scene view for an observer defined with a map location (point).

Visible and non-visible areas are determined for an area defined by the observer location, view angles, and the minimum/maximum distance range. These parameters define the frustum over which visibility is calculated from the observer location. Terrain and other obstacles between the observer and the minimum distance are excluded from the analysis, as are areas beyond the maximum distance.

Member Function Documentation

LocationViewshed::LocationViewshed(const Esri::ArcGISRuntime::Point &location, double heading, double pitch, double horizontalAngle, double verticalAngle, double minDistance, double maxDistance, QObject *parent = nullptr)

Creates a viewshed analysis object whose observer is defined using a point location.

Provide a map location and frustum parameters for the analysis.

  • location - A geographic point location for the observer.
  • heading - The heading value (azimuth) in degrees that defines the observer's view direction.
  • pitch - The pitch value (elevation angle) in degrees of the observer's view.
  • horizontalAngle - The horizontal angle of the observer's field of vision in degrees.
  • verticalAngle -The vertical angle of the observer's field of vision in degrees.
  • minDistance - The minimum distance in meters from the observer at which visibility will be evaluated.
  • maxDistance - The maximum distance in meters from the observer at which visibility will be evaluated.
  • parent - An optional parent.

LocationViewshed::LocationViewshed(const Esri::ArcGISRuntime::Camera &camera, double minDistance, double maxDistance, QObject *parent = nullptr)

Creates a viewshed analysis object whose observer is defined using a point location.

Provide a Camera and distance range to define the analysis frustum.

  • camera - A Camera to define the frustum of the viewshed. The camera location is that of the observer.
  • minDistance - The minimum distance from the observer at which visibility will be evaluated.
  • maxDistance - The maximum distance from the observer at which visibility will be evaluated.
  • parent - An optional parent.

[override virtual] LocationViewshed::~LocationViewshed()

Destructor.

double LocationViewshed::heading() const

Gets the observer's heading in degrees.

See also setHeading().

Esri::ArcGISRuntime::Point LocationViewshed::location() const

Gets the observer location.

See also setLocation().

double LocationViewshed::pitch() const

Gets the pitch (elevation angle) in degrees of the observer's field of vision.

See also setPitch().

void LocationViewshed::setHeading(double heading)

Sets the heading value (azimuth) in degrees for the location viewshed observer to heading.

See also heading().

void LocationViewshed::setLocation(const Esri::ArcGISRuntime::Point &location)

Sets the observer location to location.

See also location().

void LocationViewshed::setPitch(double pitch)

Sets the pitch value (elevation angle) in degrees for the observer's field of vision to pitch.

See also pitch().

void LocationViewshed::updateFromCamera(const Esri::ArcGISRuntime::Camera &camera)

Updates the frustum of the viewshed using the properties of the supplied camera.

The Camera is used to update the position, pitch, and heading of the viewshed frustum.


Feedback on this topic?