28
Kerry Robinson Gary Sheppard Gary Scoffield Building Situational Awareness Apps Using ArcGIS Runtime

Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Kerry Robinson

Gary Sheppard

Gary Scoffield

Building Situational Awareness Apps

Using ArcGIS Runtime

Page 2: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Presenters

Gary ScoffieldCJMTK Program Manager

[email protected]

Kerry RobinsonProduct Owner

[email protected]

Gary SheppardSr. Software Development Engineer

[email protected]

Page 3: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Agenda

Introduction

Key Capability Demos

Summary and Questions

Page 4: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Apps

DesktopAPIs

Geospatial Infrastructure

SaaS & Software

ArcGISA Comprehensive Geospatial Platform

Page 5: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Vector

Tabular

Imagery

Big Data

3D

Lidar

Real-Time

ArcGIS Simplifies Working With All Types of Data Using Web Maps, Scenes, and Layers

A Common Language for integrating data

from multiple sensors

Apps Distributed

Page 6: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

ArcGIS Makes this Content Accessible to Users thru AppsEnabling a Wide Variety of Workflows

Operational Dashboards

Dynamic Briefings

Crowd Source dataVisualizationPlanning & Design

Statistical & Pattern

Analysis

Field Collection

Page 7: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

These Apps Are All Built on Esri’s APIsEmbed Content & Functionality into Custom Apps & Workflows

Operational Dashboards

Dynamic Briefings

Crowd Source dataVisualizationPlanning & Design

Statistical & Pattern

Analysis

Field Collection

A P I s

Page 8: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

ArcGIS Runtime SDKs

Why Build Native Apps?

• Only native apps can give the best performance

• Fully leverage device capabilities

• Access all peripherals via their native SDKs

• Best debugging experience

• Offline use of ArcGIS

Deliver Mapping, Analysis, & Situational Awareness in Your Native Apps

Page 9: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Dynamic Situational Awareness Open Source App

• Open Source App for developers writing solutions to meet Situational Awareness needs in

“DIL” (Disconnected, Intermittent, and Low-Bandwidth) environments

A complete open source example application

https://developers.arcgis.com/example-apps/dsa-app-qt/

• Key Characteristics:

- In-Vehicle or Handheld environments

- Local Data (no reliance on server)

- Real-time Data Feeds

- Military Symbology

- Exploratory Analysis (Viewshed, Line of Sight)

- Conditions and Alerts

- Collaboration (reports, markup, share

location)

- 3D

Page 10: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Capability Demos

Page 11: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Local Data

Page 12: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Local Data

• ArcGIS Runtime supports several local data formats and packages:

• Data can be directly taken offline from a web map (”preplanned” and “on-demand”

workflows) or packaged and side-loaded onto the device (MMPK, MSPK)

Working in a completely disconnected environment

- Mobile Map Packages

- Mobile Scene

Packages

- Mobile Geodatabase

- GeoPackage

- KML

- Shapefile

- Mobile Mosaic

Dataset

- NITF & RPF

- DTED

- MrSID

- GeoTIFF

- IMG

App Capabilities

Runtime API Used

- Mobile Scene Package support (new)

- Layers and their visibility state are serialized for when app closes and reopens

- App includes Layer List Control to see name, toggle visibility, reorder and remove layers

- MobileScenePackage

- GeoPackage

- FeatureLayer & RasterLayer

- LayerListModel (MVC pattern)

Page 13: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Real-time feeds

& Military SymbologyPeer-2-Peer SA

Page 14: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Real-time Feeds“Messages” shared between team members in the field

• Receiving and Broadcasting message feeds over Peer-to-Peer network

• Examples of feeds:

- Friendly Position Reports, Observation Reports, Sensor Observations, …

- Simulated over UDP

• App Capabilities:

- Symbology (MIL-STD-2525C)

- Performance – Dynamic Graphics are optimized for performance on device

- Graphics from feeds can participate in other analyses

- Graphics Overlay (dynamic rendering mode)

- DictionaryRenderer (military symbology)

App Capabilities

Runtime API Used

Page 15: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Military Symbology in ArcGIS Runtime

• Runtime uses Stylex File + Dictionary Renderer (same as ArcGIS Pro)

• Works with either Graphics Layer or Feature Layer

m_graphicsOverlay = new GraphicsOverlay(this);

DictionaryRenderer* renderer = new DictionaryRenderer(dictionarySymbolStyle, this);

m_graphicsOverlay->setRenderer(renderer);

DictionarySymbolStyle* dictionarySymbolStyle = DictionarySymbolStyle::createFromFile(styleLocation, this);

1. Create the DictionarySymbolStyle

2. Search the SymbolStyle or create the DictionaryRenderer:

Page 16: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Exploratory

AnalysisViewshed & Line of Sight

Page 17: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Exploratory AnalysisGPU-based Viewshed & Line of Sight analysis

• Uses the GPU of the device to calculate visibility analysis on-the-fly

• Exploratory: visual only, using data & LOD rendered to screen (not conclusive)

• Two types:

- “Location” – based on coordinate

- “GeoElement” – tied to graphic or feature

• App capabilites:

- Analysis Overlay List

- Analysis results can be attached to current location or existing feature or graphic

• Runtime API Used:

- AnalysisOverlay

- LocationViewshed, GeoElementViewshed

- LocationLineOfSight, GeoElementLineOfSight

App Capabilities

Runtime API Used

Page 18: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Exploratory 3D Visual Analysis

• Line of Sight

Qt C++ sample

Page 19: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Exploratory 3D Visual Analysis

• Viewshed

Qt C++ sample

Page 20: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Real-time

AnalysisAlerts and Conditions

Page 21: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Alerts & ConditionsCritical notifications

• Alerting on conditions/rules against the real time feeds

• Conditions are the rules that are always evaluated

- Attribute

- Spatial / GeoFence

• App Capabilties:

- Create Conditions

- View and manage Conditions

- View and manage Alerts

• Runtime API used:

- GeometryEngine

- Graphics signal when attribute or geometry changed

App Capabilities

Runtime API Used

Page 22: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

CollaborationMarkup and Reports

Page 23: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

CollaborationShared Situational Awareness

• Collaboration is key for situational awareness

- Sharing markups and reports over P2P network

• App Capabilities:

- Simple sketch tool to draw and broadcast markups, and save as local overlay

- Wizard-driven tool to define an observation report and broadcast to others (P2P)

• Runtime API Used:

- FeatureCollectionLayer- easy to gather data and define an ad-hoc schema

- JsonSerializable toJson, fromJson to serialize and persist

- Graphics Overlay to draw

App Capabilities

Runtime API Used

Page 24: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Additional Resources

Page 25: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Find out more this week!

• ArcGIS Runtime SDKs: Working With Your Maps Online & Offline

- Wed, 11am-12pm, Room 103B

• ArcGIS Runtime SDKs: Editing Your Data Online & Offline

- Wed, 1:30-2:30 pm, Room 103B

• ArcGIS Runtime SDKs: Optimizing Your Data Workflows for Working Offline

- Wed, 2:45-3:45 pm, Room 103B

• Building Mobile Apps with ArcGIS Runtime

- Wed, 5:15-6:15 pm, Room 101

Offline Maps

Page 26: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Other Useful Sessions

• New Military Symbology Capabilities For Your Apps

- Wed, 5:15 – 6:15 pm, Room 103B

• ArcGIS Runtime SDKs: Using Augmented Reality (AR)

- Wed, 4:00 – 5:00 pm, Room 103B

Search for “Runtime” in Schedule on the Events App

Page 27: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Print Your Certificate of Attendance

Print Stations Located in 150 Concourse Lobby

Tuesday12:30 pm – 6:30 pm

Expo

Hall B

5:15 pm – 6:30 pm

Expo Social

Hall B

Wednesday10:45 am – 5:15 pm

Expo

Hall B

6:30 pm – 9:30 pm

Networking Reception

Smithsonian National Museum

of Natural History

Page 28: Building Situational Awareness Apps Using ArcGIS Runtime€¦ · Dynamic Situational Awareness Open Source App ... •App Capabilities:-Simple sketch tool to draw and broadcast markups,

Download the Esri

Events app and find your event

Select the session

you attended

Scroll down to

“Survey”

Log in to access the

survey

Complete the survey

and select “Submit”

Please Share Your Feedback in the App