ArcGIS Blog

Developers

ArcGIS Maps SDK for Qt

Enhanced Real-Time Situational Awareness in DSA 3.0, An Open-Source Reference App for Qt

By Harini Chaganti

Dynamic Situational Awareness (DSA) version 3.0 brings major improvements for real-time situational awareness workflows. The app now uses Dynamic Entities for real-time feeds, which reduce custom app-side logic for working with streaming data and bring many other benefits. Other new features added in this release include easier in-app demo data downloads, easier custom configurations, and support for geospatial PDFs and multiple grid formats.

DSA is an open-source reference app that uses ArcGIS Maps SDK for Qt 300.1, an Esri SDK built on Qt 6.8.2. Designed for developers building sophisticated situational awareness solutions for teams working in challenging, disconnected, and rapidly changing environments, DSA demonstrates how field personnel, vehicles, and command teams can maintain a shared operational picture using peer-to-peer communications and on-device GIS capabilities.

While Qt Maps SDK provides a toolkit and samples to help you build your own app, DSA brings these pieces together for you and demonstrates: best practices for offline app use, shared operational pictures in fast-changing environments, cross-platform deployment, and much more. In addition to jump-starting your development, the app also helps onboard new developers quickly.

Built on the Qt framework, DSA is designed for true cross-platform deployment and demonstrates how a single codebase can support multiple platforms.

Built to illustrate real-world mission workflows

Qt Maps SDK combines 2D and 3D mapping for large local datasets, real-time data integration, client-side spatial analysis, military symbology, and offline-first workflows within a single native application framework. These capabilities are essential for applications operating in dynamic environments where users need to understand what is happening, where it is happening, and how conditions are changing over time.

Rather than demonstrating individual APIs in isolation, DSA brings these capabilities together into realistic operational workflows. DSA illustrates how Qt Maps SDK can be used to build applications that improve operational visibility, support tracking and monitoring, and strengthen field coordination.

Developers can also implement these capabilities using any of the ArcGIS Maps SDKs for Native Apps.

What’s new in the latest update?

DSA 3.0 introduces improvements that simplify development while expanding what the application can do.

Real-time feeds now powered by dynamic entities

DSA now uses the Dynamic Entities API to implement the real-time feeds. This change significantly reduces custom app-side logic for working with streaming data updates while continuing to support dictionary renderer workflows for military symbology standards, including MIL-STD-2525 and APP-6. This improvement means less plumbing code and more built-in capability out of the box.

Track display options and interaction

A new track display settings panel has been added to choose how to visualize track history for message feeds. Users can interact with moving entities, including improved follow workflows.

Map displaying a track of the feed in the Dynamic Situational Awareness app
Use the new track display panel to set the track length as well as the size and color for previous observations and the track line

Dynamic popups

When identifying a moving entity, the popup information is dynamic and updates as new observations for that entity are received by the application.

Dynamic Situational Awareness app showing a dynamic track popup
Popup information for a track is dynamic and updates as new observations for that entity are received

Find tracks

You can now search for entities in a message feed by entering the track ID, then zoom to, follow, or perform a line-of-sight operation on any of the results.

Dynamic Situational Awareness app, searching for a track
As you type a track ID in the search box, all entities that match are listed and highlighted on the map

Support for grids

DSA now supports grids in the scene with a dedicated control for toggling grid display, including MGRS, USNG, UTM and Lat Long.

Dynamic Situational Awareness app displaying a grid
Toggle on and off grids for different coordinate notations, such as MGRS

Support for geospatial PDF

DSA now supports geospatial PDFs, allowing users to work with another commonly used geospatial document format in disconnected and field-based workflows.

This capability expands the range of operational content that can be loaded directly into the application.

Dynamic Situational Awareness app displaying a geospatial PDF
Add a geospatial PDF as an overlay

Deployment & portability enhancements

Getting started with DSA is easier with these new enhancements.

Download demo data directly in the app

Users can now download demo datasets via custom configuration ZIP files directly from the application, reducing setup time and making it faster to explore the app’s capabilities without manually provisioning data. This is particularly useful for deploying demo data to Android or iOS devices.

Deploy the app with the data

Desktop deployments of the app can now use a local DsaAppConfig.json file placed directly alongside the executable and use relative links to data files. This allows users to more easily deploy the app with the data, and not be tied to a specific location on disk. 

Support for custom configurations

DSA also makes it easier to package and manage custom configurations. Developers can work with custom configuration ZIP files, manage multiple datasets or app setups, and switch between the datasets from within the app.

What’s next for DSA?

Here’s a preview of what we are working on next:

  • Additional message feed enhancements using Dynamic Entities, such as spatial queries and alerts.
  • Support for the new spatial analysis APIs for surface-based visibility analysis.
  • Usability enhancements.
  • Added public safety data and workflows, such as law enforcement, emergency management, or fire response.

Get started

Try out the app!

Get started by cloning the DSA 3.0 GitHub repo, or try the app for yourself by downloading the pre-built apps for Windows and Android.

Learn more

Want to dive deeper into dynamic entities in the ArcGIS Maps SDK for Qt? Check out the following resources:

The links above focus on ArcGIS Maps SDK for Qt because DSA is built with Qt. Equivalent concepts and pages are available for ArcGIS Maps SDKs for .NET, Flutter, Swift, and Kotlin.

Share this article