Surface Class

  • Surface
  • class Esri::ArcGISRuntime::Surface

    Class containing elevation sources. More...

    Header: #include <Surface.h>
    Since: Esri::ArcGISRuntime 100.0
    Inherits: Esri::ArcGISRuntime::Object and Esri::ArcGISRuntime::Loadable

    This class was introduced in Esri::ArcGISRuntime 100.0.

    Public Functions

    Surface(const QList<Esri::ArcGISRuntime::ElevationSource *> &elevationSources, QObject *parent = nullptr)
    Surface(QObject *parent = nullptr)
    virtual ~Surface() override
    Esri::ArcGISRuntime::BackgroundGrid backgroundGrid() const
    float elevationExaggeration() const
    Esri::ArcGISRuntime::ElevationSourceListModel *elevationSources() const
    bool isEnabled() const
    Esri::ArcGISRuntime::TaskWatcher locationToElevation(const Esri::ArcGISRuntime::Point &location)
    QString name() const
    Esri::ArcGISRuntime::NavigationConstraint navigationConstraint() const
    float opacity() const
    void setBackgroundGrid(const Esri::ArcGISRuntime::BackgroundGrid &backgroundGrid)
    void setElevationExaggeration(float exaggeration)
    void setEnabled(bool enabled)
    void setName(const QString &name)
    void setNavigationConstraint(Esri::ArcGISRuntime::NavigationConstraint navigationConstraint)
    void setOpacity(float opacity) const

    Reimplemented Public Functions

    virtual void cancelLoad() override
    virtual void load() override
    virtual Esri::ArcGISRuntime::Error loadError() const override
    virtual Esri::ArcGISRuntime::LoadStatus loadStatus() const override
    virtual void retryLoad() override

    Signals

    void doneLoading(Esri::ArcGISRuntime::Error loadError)
    void loadStatusChanged(Esri::ArcGISRuntime::LoadStatus loadStatus)
    void locationToElevationCompleted(QUuid taskId, double elevation)

    Detailed Description

    Surface contains a list of elevation sources, and defines a surface upon which layers and overlays can be draped. The order of the elevation sources determines how the elevations are blended together for each level of detail.

    Member Function Documentation

    Surface::Surface(const QList<Esri::ArcGISRuntime::ElevationSource *> &elevationSources, QObject *parent = nullptr)

    Constructor that takes a list of ElevationSource elevationSources and an optional parent.

    Surface::Surface(QObject *parent = nullptr)

    Default constructor that takes an optional parent.

    [signal] void Surface::doneLoading(Esri::ArcGISRuntime::Error loadError)

    Signal emitted when this object is done loading.

    • loadError - Details about any error that may have occurred.

    Note: If there is a load error it will also be emitted on the errorOccurred signal.

    See also Loadable and Object.

    [signal] void Surface::loadStatusChanged(Esri::ArcGISRuntime::LoadStatus loadStatus)

    Signal emitted when the loadStatus property changes.

    See also Loadable.

    [signal] void Surface::locationToElevationCompleted(QUuid taskId, double elevation)

    Signal emitted when the elevation of the point has been calculated.

    • taskId - The task ID for the asynchronous operation.
    • elevation - The elevation of the point in meters above sea level.

    [override virtual] Surface::~Surface()

    Destructor

    Esri::ArcGISRuntime::BackgroundGrid Surface::backgroundGrid() const

    Gets the surface's background grid.

    The surface is displayed on top of the background grid.

    This function was introduced in Esri::ArcGISRuntime 100.1.

    See also setBackgroundGrid().

    [override virtual] void Surface::cancelLoad()

    Reimplements: Loadable::cancelLoad().

    See Loadable.

    float Surface::elevationExaggeration() const

    Gets the elevation exaggeration for the surface.

    The altitude values of the surface data are multiplied by the exaggeration value. The default value is 1.0.

    See also setElevationExaggeration().

    Esri::ArcGISRuntime::ElevationSourceListModel *Surface::elevationSources() const

    Gets the list of elevationSources as a model.

    bool Surface::isEnabled() const

    Gets whether the surface is enabled.

    Returns true if it is enabled.

    [override virtual] void Surface::load()

    Reimplements: Loadable::load().

    See Loadable.

    [override virtual] Esri::ArcGISRuntime::Error Surface::loadError() const

    Reimplements: Loadable::loadError() const.

    See Loadable.

    [override virtual] Esri::ArcGISRuntime::LoadStatus Surface::loadStatus() const

    Reimplements: Loadable::loadStatus() const.

    See Loadable.

    Esri::ArcGISRuntime::TaskWatcher Surface::locationToElevation(const Esri::ArcGISRuntime::Point &location)

    Gets the elevation (in meters) for the specified location on the surface.

    QString Surface::name() const

    Gets the name of the surface.

    See also setName().

    Gets the type of navigation constraint from the surface.

    The default value is NavigationConstraint::StayAbove.

    This function was introduced in Esri::ArcGISRuntime 100.5.

    See also setNavigationConstraint().

    float Surface::opacity() const

    Gets the opacity of the ground surface.

    This function was introduced in Esri::ArcGISRuntime 100.5.

    See also setOpacity.

    [override virtual] void Surface::retryLoad()

    Reimplements: Loadable::retryLoad().

    See Loadable.

    void Surface::setBackgroundGrid(const Esri::ArcGISRuntime::BackgroundGrid &backgroundGrid)

    Sets the surface's background grid to backgroundGrid.

    This function was introduced in Esri::ArcGISRuntime 100.1.

    See also backgroundGrid().

    void Surface::setElevationExaggeration(float exaggeration)

    Sets the elevation exaggeration for the surface.

    See also elevationExaggeration().

    void Surface::setEnabled(bool enabled)

    Sets whether the surface is enabled.

    See also isEnabled().

    void Surface::setName(const QString &name)

    Sets the name of the surface.

    See also name().

    void Surface::setNavigationConstraint(Esri::ArcGISRuntime::NavigationConstraint navigationConstraint)

    Sets the type of navigation constraint from the surface to navigationConstraint.

    The default value is NavigationConstraint::StayAbove.

    This function was introduced in Esri::ArcGISRuntime 100.5.

    See also navigationConstraint().

    void Surface::setOpacity(float opacity) const

    Sets the opacity of the ground surface.

    You can adjust this ground surface opacity property to see through the ground. Changing this property also changes the transparency of the basemap. (Draped operational layers are not affected by this property.) Valid opacity values are from 0.0 (full transparency) to 1.0 (full opacity). The opacity affects all base layers and the grid color:

    • If an individual base layer has 50% opacity and the surface has 50% opacity, the effect will be multiplicative, i.e. the base layer will appear to have 25% opacity.
    • If the grid color has an alpha value of 50% and the surface has 50% opacity, the effect on the grid will also be multiplicative.

    The default value is 1.0.

    This function was introduced in Esri::ArcGISRuntime 100.5.

    See also opacity().

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