Working with elevation surfaces is fundamental, as they define height values across the extent of a map or scene. The most common use for elevation surfaces is to contain the elevation source for rasterized content and on-ground vector symbols, but surfaces are also used to define heights when editing features. For example, when you create features, you can specify the x,y location as you edit, but the z-value of the feature can be derived from an elevation surface.
Caution:
To edit z-aware data with side-by-side views of a map and a scene, use the same elevation source set in both the map and the scene.
A scene always has at least one elevation surface layer, which represents the ground. You cannot remove the ground surface, but you can replace its elevation source layer. You can also add custom elevation surface layers. Examples of custom elevation surface layers include one that defines the depth of a geological stratum, or one that defines the height of a restricted airspace. You can set the height of feature layers to be drawn on the ground, relative to the ground, or at an absolute height from the elevation surface.
In areas where the elevation source values overlap, the value from the elevation source layer listed first in the Contents pane is used to define the surface. You can move an elevation source layer within the elevation category by dragging it to the associated elevation surface, or to a different elevation surface. Also, an elevation surface can have no elevation source layer at all. In this case, all elevation surface values are defined at an absolute, constant height of 0. Surface Color may be used when no source is present.
Work with the Ground elevation surface layer
Each local or global scene contains a predefined elevation surface layer called Ground that cannot be removed. The default elevation source layer for this surface is a cached elevation image service, WorldElevation3D/Terrain3D. If you are not connected to the internet, you will not have access to this service and the ground elevation will be 0. You can optionally add a local elevation source to the ground elevation surface.
Add an elevation source to the ground in a scene
A ground or custom surface can contain one or more elevation source layers. To add an elevation source layer, follow these steps:
- On the Map tab, in the Layer group, click the Add Data arrow to open the drop-down menu and click Elevation Source Layer .
- On the Add Elevation Source Layer dialog box, browse to the elevation source and click OK.
The source is added to the ground.
Add a ground surface to a map
An elevation source layer can be added to a 2D map to create a ground surface for editing or analysis operations. To add a ground surface to a map, follow these steps:
- On the Map tab, in the Layer group, click the Add Data arrow to open the drop-down menu and click Elevation Source Layer .
- On the Add Elevation Source Layer dialog box, browse to the elevation source and click OK.
A ground surface layer is added with the elevation source layer.
Navigate below ground
Because Ground represents the surface of the earth, you can apply navigation rules to it. By default, navigation below ground is disabled. It is often unnecessary to go below ground and can be disorienting when you go there by accident. If, however, your scene contains data that correctly belongs underground—such as subsurface utility pipes or geological features—you can enable below-ground navigation. In this mode, the height list in the lower corner of the scene view shows negative values when you're below the ground surface. You can enter negative numbers directly, such as -100m, to navigate the camera vertically below the surface.
To enable navigation below ground, follow these steps:
- In the Contents pane, choose the Ground elevation surface layer.
- On the Elevation Surface Layer tab, check the Navigate Underground check box.
Work with custom elevation surface layers
In addition to the ground elevation surface, you can add custom elevation surfaces.
Add a custom elevation surface layer
To add a custom elevation surface, complete the following steps:
- In the Contents pane of a scene, right-click Elevation Surfaces, and click Add Elevation Surface Layer.
You can change the name of the elevation surface by double-clicking the newly added elevation surface.
- Right-click the new surface and choose Add Elevation Source Layer .
- Browse to a valid elevation source on your file system or on ArcGIS Online.
Create multiple custom surfaces from sources
In addition to adding a single custom elevation surface layer, you can add multiple custom surfaces at once. Multiple elevation source layers can be selected on the Add Elevation Source Layer dialog box and a custom elevation surface layer is created for each elevation source layer with the surface name matching the source name.
- In the Contents pane of a scene, right-click Elevation Surfaces and choose Create Surfaces From Sources .
- Browse to a valid elevation source on your file system or a web layer on a portal.
- Select an elevation source and hold down the Ctrl key and select another elevation source.
- Click OK to create the surfaces from sources.
Change the appearance of elevation surface layers
Find all the essential surface functionality to adjust the display and appearance of your elevation surface on the Elevation Surface Layer tab. In the Contents pane, click Ground or the custom surface to enable the Elevation Surface Layer tab for the selected elevation surface layer.
Change vertical exaggeration of the surface
You can change the vertical exaggeration for all elevation source layers in a ground or custom elevation surface layer.
- In the Drawing group of the Elevation Surface Layer tab, click the Vertical Exaggeration control.
- Change the value to 2.00.
The vertical exaggeration multiplies the elevation values by 2.
Set a default elevation source layer for new local and global scenes
The default Terrain 3D layer is available when you create a local or global scene. You can change the default to be no elevation source, the default of your organization, or a user-specified elevation source. To change the default, complete the following steps:
- Start ArcGIS Pro.
- Click Settings.
- Click Options.
- Click Map and Scene page.
- Expand Ground Elevation Surface.
- Default elevation service of your organization—Set by your ArcGIS Online or ArcGIS Enterprise administrator.
- Use custom elevation source—Any supported elevation source layer.
- No elevation source—The Ground elevation surface is empty and 3D features display at 0 elevation.
- Choose one of the available options and click OK.
- Click the back arrow.
Any new local or global scene will contain the chosen option.
Drag elevation source layers between categories
Elevation source layers that reference a local raster or TIN can be dragged from the Elevation Surfaces category into the 2D Layers category in the Contents pane. Elevation source layers referencing a service cannot be dragged into the 2D Layers category.
- Right-click the Ground surface and choose Add Elevation Source Layer .
- Browse to a valid elevation source on your file system and click OK.
- Click the elevation source layer and drag it into the 2D Layers category.
The elevation source layer is now in the 2D Layers category.
Automate updating the vertical exaggeration of elevation surface layers
You can use the ElevationSurface arcpy mapping class to update the vertical exaggeration of the elevation surface layers in your scene. Updates the vertical exaggeration of the Ground elevation surface layer.
p = arcpy.mp.ArcGISProject('current')
m = p.listMaps('Scene')[0]
for surface in m.listElevationSurfaces():
if surface.name == 'Ground':
surface.verticalExaggeration = 3.0
p.save()
Share elevation in a web scene
Raster-based elevation source layers in a ground elevation surface layer can be shared as a web elevation layer to ArcGIS Online or ArcGIS Enterprise. This includes data in geographic, projected, or custom coordinate systems.
Note:
Custom elevation surface layers are not supported in a web scene. Appearance properties such as vertical exaggeration are not maintained in a web scene.