LocationViewshed Class

  • LocationViewshed
  • class Esri::ArcGISRuntime::LocationViewshed

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

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

    Public Functions

    LocationViewshed(const Esri::ArcGISRuntime::Camera &camera, double minDistance, double maxDistance, QObject *parent = nullptr)
    LocationViewshed(const Esri::ArcGISRuntime::Point &location, double heading, double pitch, double horizontalAngle, double verticalAngle, 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).

    Relevant samples:

    See also Analysis.

    Member Function Documentation

    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 QObject.

    Visible and non-visible areas are determined for an area defined by the camera and the min/max distance range. The parameters define the frustum over which visibility is calculated from the camera/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.

    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.

    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 (angle) of the observer's view relative to the surface. Valid values are from 0 (looking straight down) to 180 (straight up).
    • horizontalAngle - The horizontal angle of the observer's view. The value must be greater than 0, and no greater than 360.
    • verticalAngle - The vertical angle of the observer's view. The value must be greater than 0, and no greater than 360.
    • 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 QObject.

    Visible and non-visible areas are determined for an area defined by the observer location, view angles, and the min/max distance range. The parameters define the frustum over which visibility is calculated from the observer location. The horizontal and vertical angles must be greater than zero to define a valid frustum and are constrained to a maximum of 120 degrees. Terrain and other obstacles between the observer and the minimum distance are excluded from the analysis, as are areas beyond the maximum distance.

    [override virtual] LocationViewshed::~LocationViewshed()

    Destructor.

    double LocationViewshed::heading() const

    Gets the observer's heading in degrees.

    The heading represents the azimuth of the observer's direction of view. The value provided will be normalized to a value between 0 and 360 degrees.

    See also setHeading().

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

    Returns the observer location of the viewshed.

    See also setLocation().

    double LocationViewshed::pitch() const

    Returns the pitch of the observer's field of vision.

    Pitch is the angle of the observer's field of vision relative to the surface. Valid values are from 0 (looking straight down) to 180 (straight up).

    See also setPitch().

    void LocationViewshed::setHeading(double heading)

    Sets the heading 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 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.

    • camera - A Camera from which the viewshed will be updated.

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

    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.