Dynamic Situational Awareness

Get the app source code and SDK

ArcGIS Runtime SDK for Qt
Qt app source code

Dynamic Situational Awareness (DSA) is an open source app project built with ArcGIS Runtime SDK designed to support in-vehicle and field communications for teams who need to dynamically understand their environment and the situation around them. DSA is designed for use in disconnected, intermittent, and low-bandwidth environments, and includes tools for sharing situational awareness information, collaborating with teammates, and performing visual analysis.

This high-performance app is built for 3D, works purely with local data, and utilizes peer-to-peer messaging. DSA runs on all platforms supported by the ArcGIS Runtime SDK for Qt: Android, Windows, iOS, macOS, and Linux.

You can git clone, configure, and immediately start developing with this app to allow your users to analyze, communicate, and collaborate in a rapidly-changing and disconnected environment.


View and manipulate maps with local data in 3D

Display your map in 3D from all angles and elevations. Your users can view their own location-track and navigate the map.

The app supports displaying your data in several standard data formats including Shapefile, IMG, OGC GeoPackage, Mobile Geodatabase (an ArcGIS format), and defense formats including DTED, CIB, CADRG, and NITF. The app also displays both raster and vector data.

Share real-time situational awareness information and visualizations

Allow your users to share valuable information with their teammates on a 3D map over a secure peer-to-peer tactical network. The app tracks locations and movements of teammates, including airborne teammates, in real time (dependent on update frequency). A user can share real-time information with their teammates such as other entity positions and movements, emerging hazards, and information from sensor observations.

Collaborate with teammates

The app is designed to be used in the field by users who need to securely collaborate with their teammates. Users can share markup such as text and sketches to convey information about situations, problems, and solutions.

Share rule-based conditions and alerts

You can configure the application to trigger alerts for when real-time data feeds and messages meet specific conditions, such as a geofence intrusion. You can create different alert levels based on type, and send emergency alerts to all teammates when evolving situations warrant.

Employ real-time, visual-analysis tools

Give your users a strategic advantage with high-performance 3D mapping analysis tools. They can use Viewshed to instantly analyze what features are visible in a 3D map from various moveable locations. They can use Line of Sight to determine visibility between a moving observer and one or more moving targets.

Apply military symbology

The app dynamically displays military symbols based on the symbol ID code contained in received location updates. All symbols are displayed billboard-style, facing the user, regardless of orientation.

Convert coordinates between common notations

Convert location coordinates between various common coordinate notations, including DD, DMS, MGRS, GARS and UTM.

Target multiple platforms

The DSA app is designed for a variety of devices and screen sizes.

DSA-Vehicle runs on a laptop computer or tablet and is targeted for in-vehicle use. DSA-Handheld runs on a phone or small tablet and supports on-foot, hand-held use.

Both configurations present exactly the same features, but on difference device types.

Message simulator

You can try out the pre-compiled executables built for Windows and Android. Further, bring these executables to life with Message Simulator, an open-source support utility that simulates messages and position reports to test and demonstrate DSA-Vehicle and DSA-Handheld. Message Simulator broadcasts messages and DSA updates its display as those messages are received. Message Simulator is buildable for Windows, Linux, and macOS.

Of course, you can also build the app yourself. Use your own data or download sample local data. To learn how, consult the section Get the DSA apps in the DSA documentation.

Make this app yours

The DSA app is designed to be highly configurable so that it can be customized to fit your own needs.

Get started

In your local environment

  1. Download and install ArcGIS Runtime SDK for Qt.
  2. Download the Qt app source code.
  3. Modify the configuration file to meet your requirements. (Alternatively, you can make changes via the Settings panel in the app.)
  4. Add your own local data and resources to the project bundle. (Alternatively, you can use the Add Local Data tool to add data sources from within the app, saving changes to the configuration file.)

Read the documentation

The DSA app repository maintains comprehensive documentation. Consult the documentation to learn about the app's architecture, interface, configuration, ArcGIS development patterns, and licenses. See the docs/index.md file in the app source code repository for more information.