ArcGIS Runtime API for Qt lets you use the Qt Framework (QML and C++) to write your code once and deploy it to Windows, macOS, Linux, Android, and iOS. The apps you create for deployment to mobile devices can be high-performance native apps with small memory and local-storage requirements.
This page describes common ArcGIS Runtime API for Qt capabilities that you can add to your app. For a more hands-on overview of the API, download the sample viewer from ArcGIS Online and try out each capability with the code beside it.
Maps
You can use an interactive map to:
- Display a basemap layer such as streets or satellite imagery.
- Access and display data layers based on files, databases, or services, including data you have authored. Use the Portal API to consume content and services from ArcGIS Online or ArcGIS Enterprise portals.
- Provide context for temporary points, lines, polygons, or text displayed as graphics.
- Measure distances and explore spatial relationships between geometries.
- Inspect features from data layers and view attributes that describe them.
- Save a collection of layers as a web map to be shared across ArcGIS.
- Rotate the map view.
- Filter the display of features according to attribute values, area of interest, or a time extent.
- Integrate native device capabilities, such as GPS, camera, calendar, and contacts.
- Work with maps and layers while disconnected from the network (offline).
Sample
Change a map's basemap. A basemap displays below all other layers in order to provide visual and geographic context for data layers in a map or scene.
Tutorial
Display a map (Qt). Step through API setup and use Qt to create a map instance and its map view to display a topographic basemap.
Guide
Learn how maps, map views, and layers work together to help you solve spatial problems, present information, perform what-if analysis, and more.
Scenes
You can use an interactive scene to:
- Display and share collections of 3D geographic data.
- Show accurate terrain elevation.
- Perform 3D analysis, such as viewshed and line of sight.
- Show content beneath the surface.
- Build augmented reality apps to create immersive 3D experiences.
Sample
Create a terrain surface with elevation described from a local tile package.
Tutorial
Create a scene instance to provide a 3D visualization of data (Qt).
Guide
Learn how to create simple 3D scenes and use scenes for 3D analysis.
Layers and data
- Use a variety of formats of spatial data (data layers), such as hosted ArcGIS services, Open Street Map, KML, WFS, WMTS, Shapefile, and many others.
- Work with layers while connected or disconnected from the network.
- Work with nonspatial data and tables.
- Enable users to collect and edit data in the field and synchronize edits with your enterprise geodatabase.
Services
ArcGIS location services provide a range of capabilities, such as displaying basemaps, searching (geocoding) for addresses, and finding routes between locations. You can also create your own services and consume them in your ArcGIS Runtime app.
For offline, feature services must be sync-enabled and tiled services must be enabled for "export tiles."
Basemap styles service
Vector and image tile basemap layers for the world.
Routing service
Find a route between two locations, which can be used for driving directions or walking directions.
Geocoding service
Search for addresses, businesses, and places around the world.
Offline
ArcGIS Runtime enables you to use maps and scenes when you have no network or cellular connection.
You can download a portion of a web map to use offline (before going offline, select the area you want) or sideload/install a package of maps or scenes directly onto your device.
You can also download areas of individual feature service, vector tile service, or map tile service data.
ArcGIS Runtime also allows you to access data files already downloaded/sideloaded/installed on your device (multiple formats are supported, such as shapefiles, GeoPackages, KML, geodatabase, and many others).
Capabilities supported by maps and scenes in offline workflows include:
- Navigate and explore
- Collect and edit data while offline (in the field, for example) and synchronize your edits with the server when connected again
- Find places
- Find routes (driving directions, walking directions, and so on)
- Calculate service areas
- Perform analysis
Scenes additionally support the following:
- Manage a virtual observer with camera controllers
- Perform interactive visual analysis such as viewshed and line of sight
Sample
Take a web map offline.
Sample
Sync edits made offline.
Guide
Learn about the main offline workflows and view a list of capabilities in each.
Styles and visualization
- Customize the display of symbols in your app using custom styles created in ArcGIS Pro (such as web styles or dictionary symbology).
- Create your own style using the ArcGIS Vector Tile Style Editor, which allows you to interactively create a style for an Esri vector basemap and save it in ArcGIS Online as a portal item. You can then open the basemap from the portal item to display it in your map with the custom style.
- Use predefined styles for WMS layers.
- Use graphics to display large numbers of moving symbols while maintaining the smooth feel of a native app.
- Depict several pieces of information with a single symbol using a dictionary renderer.
- Use callouts and labels to show textual information.
- Configure pop-ups.
Query and edit
- Search, query, and identify geographic features using any combination of spatial, attribute, or temporal criteria.
- Use simple editing or multi-editor workflows.
- Edit while disconnected from the network and synchronize your edits when reconnected.
Route and directions
- Calculate optimal routes between locations and generate directions.
- Calculate drive times and multi-stop routes with driving directions.
- Use Esri routing data, 3rd party routing data, your own data, or a combination. Download a free sample of Streetmap Premium data (greater Los Angeles area) to use with your ArcGIS Runtime app.
- Integrate native devices, such as a GPS or a camera. For example, use the current GPS location as the starting point for a route.
Spatial and data analysis
- Perform geometric operations and evaluate spatial relationships between geometries.
- Perform spatial analysis using geoprocessing tasks and services. Dozens are available that you can string together for modeling, what-if scenarios, and batch processing.
- Run local analyses on desktop deploy targets (C++ API with Local Server).
Utility networks
- Use utility network capabilities to trace and analyze the flow of resources, such as gas, water, and electricity.
- Read utility network information stored in a web map.
- Use branch versioning for multi-user editing, edit tracking, and what-if analyses.