- Video length: 1:52
- This video was created with ArcGIS Pro 2.1.
The ability to view maps in 3D is part of ArcGIS Pro. Any 2D map can be converted to a 3D scene for visualization or 3D analysis. In this tutorial, you'll convert a 2D map to a 3D scene and work with its 3D viewing properties
- Estimated time: 25 minutes
- Software requirements: ArcGIS Pro
The tutorial steps in the online help reflect the look and capabilities of the current software release. If you have an earlier software version, use the offline help system to open the tutorial. To switch from the online to the offline help system, see About ArcGIS Pro Help. If you don't have ArcGIS Pro or ArcGIS Online, you can sign up for an ArcGIS free trial .
Open the project
Your study area will be the Kelburn suburb of Wellington, New Zealand. The starting map will be familiar to you if you completed the Import an ArcMap document tutorial.
- Start ArcGIS Pro and sign in if necessary.
- On the start page, under your recent projects, click Open another project.
If you already have a project open, click the Project tab on the ribbon. In the list of tabs on the left, click Open.
- On the Open project page, click Portal and click Browse .
- On the Open Project dialog box, under Portal , click All Portal .
- At the top of the dialog box, in the Search box, type Convert a map to a scene tutorial and press Enter.
- In the list of search results, click Convert a map to a scene to select the project package.
If there is more than one project package with this name, make sure to select the correct one. In the upper right corner of the Open Project dialog box, click the Show/hide details panel button . The owner should be ArcGISProTutorials.
- Click OK.
The project opens with a map view of the Kelburn suburb. Layers representing walking paths, roads, and zoning are displayed on a dark gray basemap.
The project is stored in your <user documents>\ArcGIS\Packages folder.
Create a scene from the Kelburn map
In ArcGIS Pro, a 3D map is called a scene. A scene can be viewed in either of two modes: global or local. In global mode, the earth is drawn as a globe and your viewpoint is usually thousands of kilometers from the data. This view is best for very large study areas. In local mode, the earth is drawn in perspective and your viewpoint is usually tens of kilometers from the data. This view is best for small study areas.
The default setting is for new scenes to open in global view mode. However, in this project your area of interest is very small and a local view of the scene is best. To ensure that your new scene opens in local view mode, you'll change an application setting.
Any scene can be viewed in either global or local mode. To switch modes, click the Global button or the Local button on the View tab. The advantage of opening the new scene in local mode—rather than switching from global to local mode later—is that the projected coordinate system of the 2D Kelburn map will be preserved. Global scenes don't use projected coordinate systems.
- On the ribbon, click the Project tab.
- In the list of tabs on the left, click Options.
- On the Options dialog box, under Application, click the Map and Scene tab.
- On the property sheet, under Scene, click Local.
- Click OK.
The new Scene options setting will remain in effect until you change it again.
- Click the Back button in the upper left corner of the ArcGIS Pro window (or press the Escape key).
- On the ribbon, click the View tab. In the View group, click Convert .
The map is converted to a scene named Kelburn_3D. The local scene icon appears on the scene's view tab. It is also highlighted on the View tab of the ribbon in the View group.
The scene doesn't look especially 3D yet, but it will when you're done.
Explore the scene and set scene properties
You'll navigate the scene and view it from different perspectives. You'll also change the basemap and set scene properties such as the sky color and terrain shading.
The on-screen navigator , which appears by default in the lower-left corner of a scene, is a visual control for navigating scenes and maps. For help with 3D navigation, try the Navigate maps and scenes quick-start tutorial or see the help topics Overview of 3D navigation and The on-screen navigator.
- Explore the scene by zooming, panning, tilting, and rotating to different viewpoints.
To navigate the scene, you can use the mouse buttons and scroll wheel or the on-screen navigator . Click the Show Full Control button on the navigator to access its full functionality. If you get disoriented, click the Map tab and click Bookmarks . Under Kelburn_3D Bookmarks, click Kelburn.
The area around Kelburn is more hilly than it looks in this scene. The 3D effect is partly concealed by the dark gray basemap.
- On the ribbon, click the Map tab. In the Layer group, click Basemap and click Streets.
The Streets basemap replaces the Dark Gray Canvas basemap.
- In the Contents pane, right-click the Kelburn_3D scene name and click Properties .
- On the Map Properties dialog box, click the General tab if necessary.
- On the property sheet, click the Background color drop-down menu and click Oxide Blue to make the sky blue.
On the property sheet, the Elevation Units may be set to Feet. If you want, you can change the setting to Meters or something else. These elevation units report your viewing distance from the data in the scene's status bar. They do not represent the measurement units of the data.
- Click the Elevation Surface tab. Change Exaggeration to 1.25.
Exaggeration is a purely visual effect that emphasizes the terrain variation.
- Check the Shade surface relative to the scene's light position box.
This adds realistic shading to the terrain.
- Click the Coordinate Systems tab.
The current XY coordinate system of the scene is a local coordinate system: NZGD 2000 New Zealand Transverse Mercator. In global view mode, the scene's coordinate system would be set to WGS 1984.
- Click OK.
- Use the Navigator or your mouse to continue exploring the scene.
As you zoom out or pan away from the Kelburn suburb, the landscape continues to draw in 3D all the way to the limits of the local coordinate system. The elevation values that create the 3D effect are provided by a world elevation map called Terrain3D. This map is configured as a web service hosted on ArcGIS Online. Every new scene connects to this service automatically.
- On the Quick Access Toolbar, click Save .
Add layers to the scene
You'll add two new layers to the scene and symbolize them. One layer represents buildings in the Kelburn suburb. This layer has an attribute you can use to extrude the buildings—that is, to draw them at their heights above the ground. The other layer represents the boundaries of Wellington suburbs. The datasets for these layers are stored in the project geodatabase.
- In the Catalog pane, make sure the Project tab is selected. Browse to Databases > Convert_a_map_to_a_scene.gdb.
- Click the Buildings feature class to select it. Press the Ctrl key and click the Suburb_Boundaries feature class to select it also.
- Right-click either selected feature class and click Add To Current Map .
The layers are added to the scene with default symbology. The Suburb_Boundaries layer covers the other layers in the scene. You'll change the layer symbology to show the boundary lines with no fill color.
- In the Contents pane, click the symbol for the Suburb_Boundaries layer.
- In the Symbology pane, under Format Polygon Symbol, click the Properties tab. Confirm that the Symbol tab is selected under the Properties tab.
- Click the Color drop-down menu and click No Color.
- Click the Outline color drop-down menu and click Cordovan Brown.
- Change the Outline width to 1.5 pt and press Enter.
- Click Apply.
You can now see the boundary of Kelburn and the other Wellington suburbs.
- In the Contents pane, click the symbol for the Buildings layer.
You'll change the arbitrary default symbol to a symbol designed for buildings.
- In the Symbology pane, under Format Polygon Symbol, click the Gallery tab.
If the Symbology pane shows the layer name Buildings instead of Format Polygon Symbol, click the symbol patch to put the pane in the correct state.
- At the top of the scrolling list of symbols, under ArcGIS 2D, click Building Footprint.
The symbol color is updated in the scene. However, the buildings still lie flat on the surface. To extrude them by their heights, you need to know which attribute in the layer attribute table stores height values. (Fortunately, this Buildings layer has a height attribute.)
- In the Contents pane, right-click the Buildings layer and click Attribute Table .
The Approximate Height field stores each building's height above ground in meters.
The table also has a field called Base Elevation that stores the elevation value of each feature. However, the layer is not using this information to position the features in 3D space. Like the other layers in the scene, the Buildings layer is using values from the Terrain3D elevation map.
- Close the table. In the Contents pane, confirm that the Buildings layer is selected.
- On the ribbon, under Feature Layer, click the Appearance tab.
- In the Extrusion group, click Type and click Max Height.
- Next to Type , click the Field drop-down menu and click Approximate Height.
Each building is now extruded by its approximate height value in the table. By default, the extrusion units are set to meters. This is the correct unit for this layer.
You applied the extrusion value to the feature's maximum height (Max Height). To understand what that means, imagine a square building feature, defined by four vertices, lying on a slope. The feature's maximum height is the elevation of the vertex that is at the highest point on the slope. Its minimum height is the elevation of the vertex that is at the lowest point on the slope. Features extruded by their maximum height are therefore slightly taller than features extruded by their minimum height, unless the slope is flat. To learn more about extrusion, see Extrude features to 3D symbology.
In the Contents pane, the Buildings layer has been moved from the 2D Layers category to the 3D Layers category. Layers may be placed in one category or the other according to the symbology properties and elevation settings applied to them. For example, extrusion is a 3D drawing property. When you extrude a layer, it is moved automatically from 2D Layers to 3D Layers. The categories reflect the way that the layer is being used in the scene; they don't necessarily indicate whether the layer's data source has z-values.
- On the Quick Access Toolbar, click the Save button .
In the next section, you'll add another elevation surface to the scene to provide more detailed elevation values for the Kelburn suburb.
Add an elevation surface to the scene
Every scene has an elevation surface. The elevation surface provides elevation values for some or all of the layers in the scene.
An elevation surface is a raster or TIN dataset that stores elevation values for a continuous geographic area. The resolution of the elevation surface—the amount of elevation detail it contains—may be high or low. Surfaces that cover large areas typically have lower resolution (less detail) than surfaces that cover small areas.
An elevation surface doesn't need to be present as a layer in a scene. It can be accessed as a dataset stored on a local or network computer. It can also be accessed as a web service, as in the case of the WorldElevation3D/Terrain3D elevation surface.
A scene can have more than one elevation surface. For example, a high-resolution surface may provide elevation values for a small area of interest, while a low-resolution surface provides elevation values for the surrounding area.
To draw in 3D space, a layer must have a source of elevation values. The source may be the scene's default elevation surface, it may be another elevation surface you specify, or it may be the layer's own elevation values if it has them. A layer that has its own elevation values may store them as z-values in its Shape field or as numeric values in another field of its attribute table. For example, the Buildings layer stores elevation values in a field called Base Elevation. (As previously noted, the layer is not using these values but rather the values of the scene's elevation surface.)
It isn't necessary that all the layers in a scene use the same elevation source. Some layers may use the scene's default elevation surface while others use their own values. Elevation values stored with a layer are often more accurate than values obtained from an elevation surface. However, if two layers in a scene use different elevation sources, they may not align perfectly in 3D space. For this reason, it may be a good idea to set a layer's elevation source to a surface used by other layers in the scene, even if the layer has its own elevation values.
In this section, you'll add a high-resolution elevation surface that covers just the area of the Kelburn suburb. This surface will be used together with the default WorldElevation3D/Terrain3D surface to provide elevation values for all the layers in the scene.
- In the Contents pane, right-click the Kelburn_3D scene name and click Properties .
- On the Map Properties dialog box, click the Elevation Surface tab.
- Expand Elevation sources.
WorldElevation3D/Terrain3D is the scene's default elevation surface. This surface is a composite of many elevation maps with varying resolution. In New Zealand, its resolution is approximately 31 meters, meaning that it stores one elevation value for every 961 square meters of area (31 meters squared). To see the WorldElevation3D/Terrain3D resolution and data source for any part of the world, open the Elevation Coverage Map.
The project geodatabase includes an elevation surface that covers the extent of the Kelburn suburb at a resolution of 1 meter. You'll add this surface as a second elevation source. Layers that lie within the Kelburn suburb will use the higher-resolution surface. Layers that extend beyond Kelburn (namely, the Suburb_Boundaries layer) will use the lower-resolution default surface.
- Under Elevation sources, click Add Elevation Source.
- On the Add Elevation Source dialog box, browse to Project > Databases > Convert_a_map_to_a_scene.gdb. Click the Elevation_Kelburn raster dataset to select it.
- Click OK to add the dataset as an elevation source.
On the Map Properties dialog box, Elevation_Kelburn is added above WorldElevation3D/Terrain3D.
The scene now has two elevation sources. The order in which they are listed is important. A layer will use the elevation values from the surface at the top of the list as long as that surface covers the same area as the layer. Therefore, if you have two or more elevation sources, you should put them in the order of highest to lowest resolution.
Both elevation surfaces in this scene are ground surfaces; that is, they model the surface topography of the earth. You can model other kinds of surfaces, such as cave floors or lake beds, if you have suitable elevation datasets. These datasets are added to a scene with the Add New Surface button on the Elevation Surface tab.
- Click OK on the Map Properties dialog box.
The scene redraws. Features that lie within the Kelburn suburb now get their elevation values from the high-resolution Elevation_Kelburn surface. These features are therefore more precisely positioned in 3D space. (The difference may not be noticeable to the eye.)
- On the Quick Access Toolbar, click the Save button .
Your Kelburn scene is complete. Optionally, you can continue to explore the scene. You may also want to view the scene side-by-side with the Kelburn map by docking its view tab on a different docking target.
In the last section, you saw that the Buildings layer stores its own elevation values in the Base Elevation field of its attribute table. To use these values as the layer's elevation source, follow these steps:
- Open Properties for the Buildings layer and click the Elevation tab.
- Change the Features are setting from On the ground to At an absolute height.
- Under Additional feature elevation using, click A field and choose BASE_ELEVATION from the drop-down list.
- If necessary, change the Vertical Exaggeration for the layer so that it matches the Exaggeration value in the scene properties.
In addition to converting maps to scenes, you can import existing 3D documents from ArcScene and ArcGlobe. ArcScene documents open as local scenes and ArcGlobe documents open as global scenes. Because ArcGIS Pro and ArcScene have different 3D environments, you may need to work with the map and layer properties of an imported ArcScene document to make it display the way you want. In some cases, it's easier to create a new scene in ArcGIS Pro using the same data. Imported ArcGlobe documents generally display well in ArcGIS Pro with little or no modification.