Maps (2D) and scenes (3D) gather the resources and configuration you need to tell your story into a document that can be opened, shared, and edited across the ArcGIS platform. These geographic documents combine data tables, layers, symbology, map content, and more. They can contain analysis capabilities that reveal patterns and solve problems. This topic describes how maps and scenes fit into the ArcGIS platform and your own apps.
Maps and scenes consist of the following components:
- Basemap & elevation sources- Both maps and scenes use basemaps to provide context (the background) for the geographic content in your app. Elevation sources allow scenes to render realistic terrain.
- Operational layers - These visualize the important content in your map or scene - that which informs the user, tells a story, or otherwise provides value. To learn more about the role of layers and tables, see Layers and tables.
- Data tables - Data that is visualized in a layer can be related to non-geographic data. For example, a layer showing employee locations might be related to a non-spatial table that contains employees and their roles. This table can be stored alongside the explicitly geographic content of the map. To learn more about the role of layers and tables, see Layers and tables.
- Locators & network datasets - Maps can contain information about transportation networks. This allows you to build geocoding, routing, service area analysis, and other network analysis capabilities into your app. For example, the StreetMap Premium offline mapping and routing product uses a mobile map package (a map packaged for offline use) to deliver both offline maps and offline routing.
- Bookmarks - Viewpoints that are stored alongside the map. For example, you might have a bookmark for each mountain in a map detailing a climber's adventures.
Maps and scenes are the documents (containers) for geographic content; having a map or scene does not automatically display it. You can use a MapView to display maps and a SceneView to display scenes. In this context, the map or scene represents the model, while the MapView or SceneView is the view tier in the model-view-controller pattern. The views handle rendering the map or scene as well as providing services on top of the underlying document, like showing overlay graphics, enabling identify and selection, and performing visual analysis.
ArcGIS Runtime provides map and map view objects that you can use to build new maps, display maps, save maps and share maps. There are complimentary APIs for scene and scene view objects to build new scenes and display scenes. Also see the API reference.
- When you view or analyze spatial data from different layers or map sources in your map, you may need to consider their spatial reference. For details, see Spatial references.
- Objects that can be symbolized on your map can come from persisted data (feature data, such as roads and parcels in a geodatabase) and transient data (graphics, such as data coming through a web socket). For details, see Features and graphics, and Symbols and renderers.
Online maps and scenes
ArcGIS includes a Living Atlas of the World with beautiful and authoritative maps on thousands of topics. Explore maps and data from Esri and thousands of other organizations and combine them with your own data to create new maps and applications.
Maps and scenes can be opened from ArcGIS Online or Portal. Maps can then be edited and saved back to ArcGIS Online or Portal. ArcGIS Online & Portal have a map and scene viewer which can be used to work with maps and scenes online. Online maps and scenes can be shared across the ArcGIS platform, including apps that use Runtime. To create an online map follow the How-to steps in ArcGIS Online Help's get started with maps topic.
Users can take their maps offline to continue working with a map in a partially or fully disconnected environment . There are two offline map patterns:
Services patterns - Runtime itself takes the map offline.
- Desktop pattern - Tools like ArcGIS Pro are used to create a mobile map package that is then consumed by Runtime.
The services patterns allows you to build apps that can take a map offline as long as the map and its layers have been authored for offline use. If you wish to edit feature data and synchronise any changes when network connectivity is restored you also need to enable the sync capability on any feature layers. Runtime offer s two main services patterns :
- Preplanned - G enerate an offline map ahead of time ; field workers can download the map, then follow the preplanned offline workflow.
- On-Demand - The worker can select an area of interest and download that part of the map to the device. See the on-demand offline workflow for more information.
Instead of taking a whole map offline you can also take individual layers and data offline and construct the map within the app itself. This is useful if you want the flexibility to control the combination of layers in the map and way the data is presented to the user. For more details, see create offline layers.
This pattern allows you to download a map into a mobile map package file and side load it onto your user's device. The advantage of this approach is that you can create one mobile map package file and distribute it to many devices. This is a 'view-only' option as any edits your users make cannot be synchronized back to the original data source.
With ArcGIS Pro you can create mobile map packages which combine your organization’s maps, assets, road networks, or locators into a single file. For details, see Mobile map package in the ArcGIS Pro help. You can also create packages for individual layers using ArcGIS Desktop. For details, see the desktop pattern section in Create an offline layer.
If you'd like a ready-to-use and regularly updated street map in your offline maps (that includes a locator and network dataset) see Add StreetMap Premium data.
2D maps vs. 3D scenes
A 2D map resembles a paper map where a representation of the earth is projected onto a 2D surface. In 3D, the map is projected onto a globe that more accurately models the spherical shape of the earth.
In 2D, any point on the globe is represented by an x and y coordinate (longitude and latitude). In 3D, points on the globe are represented with three coordinates: x (longitude), y (latitude), and z (elevation).
3D scenes require configuring a Camera to set a viewpoint. A camera has a location (x longitude, y latitude), altitude (height, in meters, from sea level), heading (angle about the z axis the camera is rotated, in degrees), pitch (angle the camera is rotated relative to the y axis, in degrees), and roll (angle the camera is rotated about the axis that's perpendicular to the camera's direction, in degrees.). The camera also includes a CameraController that provides specialized camera navigation.
3D scenes may require different UI controls to navigate the scene. Navigating with a camera offers different parameters than does moving a viewpoint, such as altering the camera altitude, heading, and pitch.
3D scenes may contain 3D objects, such as buildings, trees, and other objects. 3D objects can be represented with 3D symbols or SceneLayers.
Due to the nature of 3D rendering, there are additional properties for scenes that do not apply to 2D maps, such as surface placement with LayerSceneProperties and extrusion with RendererSceneProperties.