21.06.2013 Views

ArcGIS for Defense/Intel A Developer's Guide - Esri

ArcGIS for Defense/Intel A Developer's Guide - Esri

ArcGIS for Defense/Intel A Developer's Guide - Esri

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ArcGIS</strong> <strong>for</strong> <strong>Defense</strong>/<strong>Intel</strong><br />

A Developer’s <strong>Guide</strong><br />

Ben Conklin<br />

Matt Funk<br />

Keith Ailshie


Agenda<br />

• Introduction<br />

• Basemaps<br />

• Working with military features<br />

• <strong>ArcGIS</strong> Runtime Qt SDK


<strong>ArcGIS</strong><br />

Easier<br />

More Powerful<br />

and Everywhere<br />

Mobil<br />

e<br />

We<br />

b<br />

Deskto<br />

p<br />

• Discover<br />

• Create<br />

• Manage<br />

• Visualize<br />

• Analyze<br />

• Collaborate<br />

Cloud<br />

Enterprise<br />

Local


<strong>ArcGIS</strong> Is Open<br />

OGC<br />

WWW<br />

SQL<br />

Standards<br />

CAD<br />

KML<br />

ISO<br />

WMS<br />

DoD<br />

WCS<br />

WFS<br />

SOAP<br />

INSPIRE<br />

NATO<br />

Open Data Access<br />

GDB<br />

Silverlight<br />

Open API’s<br />

Share Point<br />

Flex<br />

Java<br />

REST<br />

Open REST API<br />

Any Application<br />

REST API<br />

esri Published REST<br />

Interface as an Open Standard<br />

Silverlight<br />

JavaScript<br />

Flex


<strong>Intel</strong>ligent Maps Are a Focus<br />

• Interact<br />

• Query<br />

• Edit<br />

• Share<br />

• Analyze<br />

• Combine<br />

Data Model<br />

Data<br />

Symbology<br />

Tables/<br />

Charts<br />

<strong>Intel</strong>ligence Human Terrain<br />

Accessibility<br />

Analysis<br />

and Models<br />

Metadata<br />

Workflows<br />

Operations<br />

Situational Awareness


Sharing Well Designed Maps Through Templates<br />

Encapsulating geospatial knowledge in a variety of ways<br />

Map Services Packages<br />

Application Templates<br />

Desktop<br />

Mobile<br />

Web


<strong>ArcGIS</strong><br />

A complete system <strong>for</strong> geographic in<strong>for</strong>mation<br />

Mobile<br />

Web<br />

Desktop<br />

• Discover<br />

• Create<br />

• Manage<br />

• Visualize<br />

• Analyze<br />

• Collaborate<br />

Cloud<br />

Enterprise<br />

Local


<strong>ArcGIS</strong> is <strong>for</strong> <strong>Defense</strong><br />

A complete system <strong>for</strong> geospatial intelligence<br />

Mounted and<br />

Dismounted<br />

COP<br />

Analyst<br />

Workstation<br />

• Discover<br />

• Create<br />

• Manage<br />

• Visualize<br />

• Analyze<br />

• Collaborate<br />

<strong>Defense</strong><br />

Cloud<br />

Enterprise<br />

Local/<br />

Deployed


<strong>Defense</strong> and <strong>Intel</strong>ligence community<br />

Imagery<br />

Agencies<br />

Terrain<br />

All Source<br />

Analysts<br />

J-3/4/7<br />

Operator<br />

Commander<br />

Mounted Dismounted


<strong>Defense</strong> users build <strong>Intel</strong>ligent Maps<br />

Operations<br />

Situational<br />

Awareness<br />

Mobility<br />

<strong>Intel</strong>ligence<br />

Human Terrain<br />

A key concept is basemaps plus<br />

operational layers = “<strong>Intel</strong>ligent Map”


Military Features<br />

Native to <strong>ArcGIS</strong><br />

• Military Features are <strong>ArcGIS</strong> Features<br />

• Standard <strong>ArcGIS</strong> symbology and labeling<br />

• Units, Installations, Operational Features, etc.<br />

• Used <strong>for</strong> planning, analysis, collaboration<br />

• Geodatabase schema<br />

• Feature Templates and Packages<br />

• MIL-STD-2525C / APP6-B


<strong>ArcGIS</strong> <strong>for</strong> <strong>Defense</strong> Templates


Resource Center<br />

• <strong>Defense</strong> and <strong>Intel</strong>ligence User Community<br />

• Blogs<br />

• Help<br />

• Forum<br />

• Videos<br />

• Ideas<br />

• Template Galleries


Basemaps


Basemaps<br />

• Background <strong>for</strong> operational layers<br />

• Frame of reference to orient the user<br />

• Give context to operational layers<br />

• Require thought, planning and good design


Principals <strong>for</strong> good basemaps<br />

• Basemaps are continuous in an area of interest<br />

• Basemaps exist at multiple scales<br />

• Basemaps are a simple way to encapsulate complex<br />

data<br />

- Basemaps are presented as a couple of layers<br />

- Basemaps have simple pop-ups<br />

• Basemaps should have a common projection (Web<br />

Mercator Aux. Sphere)


Basemaps<br />

•Topographic Basemap<br />

•Scanned Maps Basemap<br />

•Imagery Basemap


Topographic Basemap<br />

• Elevation Data<br />

- Raster data (DTED)<br />

- Contours<br />

• Topographic Features at multiple<br />

scale<br />

- Transportation Network<br />

- Built Up areas<br />

- Place Names<br />

- Boundaries<br />

- Hydrography<br />

- Physiographic Features<br />

- VMAP 0, 1, 2, UVMAP


Scanned Maps Basemaps<br />

• Scanned Maps<br />

- Georeferenced scanned images of NGA hardcopy products<br />

- Global Navigation Chart (GNC)<br />

- Jet Navigation Chart (JNC)<br />

- Operational Navigation Chart (ONC)<br />

- Tactical Pilotage Chart (TPC)<br />

- Joint Operations Graphic (JOG)<br />

- Topographic Line Map (TLM)<br />

- City Graphics<br />

- Others<br />

• Released in 2 <strong>for</strong>mats<br />

• Compressed ARC Digitized Raster Graphics (CADRG)<br />

• Enhanced Compressed Raster Graphics (ECRG)


Imagery Basemap<br />

• Panchromatic Imagery<br />

• Controlled Image Base (CIB)<br />

- Orthorectified<br />

- 10 m, 5 m, 1 m resolution


Mosaic Datasets <strong>for</strong> Scanned Maps and Imagery<br />

• New data type within the Geodatabase at <strong>ArcGIS</strong> 10<br />

to store, manage, view and query imagery<br />

• Combines the best capabilities of raster catalogs,<br />

raster datasets and image server technology<br />

• Available to all license levels (requires <strong>ArcGIS</strong> Editor<br />

or above to create and add data)


Mosaic Datasets Key Benefits<br />

• On-the-fly mosaicking<br />

• Handles imagery of differing resolutions<br />

• On-the-fly processing (function chains)<br />

• Usable as a raster dataset <strong>for</strong> analysis<br />

• Dissemination through Geodatabase and <strong>ArcGIS</strong><br />

Server (image service)<br />

• Time enabled<br />

• Raster Types enable ingestion of new imagery with<br />

associated metadata and simplified processing


Raster Types <strong>for</strong> Mosaic Datasets<br />

• A raster type identifies<br />

- Raster <strong>for</strong>mat<br />

- Processing (function chain)<br />

- Metadata<br />

• Applied during data load<br />

• Military raster types<br />

- NITF<br />

- DTED<br />

- CADRG<br />

- CIB


Basemap templates<br />

• <strong>ArcGIS</strong> Online <strong>Defense</strong> and <strong>Intel</strong>ligence Community<br />

• Topographic Basemap Map Template<br />

- NSG entity catalog features<br />

- DTED rasters<br />

• Imagery Basemap Template<br />

- CIB<br />

• Scanned Maps Template<br />

- CADRG/ECRG


Scanned Maps Template


Working with military features


What are military features?<br />

• Infantry company, main<br />

supply route, IED event<br />

• <strong>ArcGIS</strong> features<br />

- Points, lines, polygons<br />

- Geodatabase schema<br />

- Labels <strong>for</strong> text<br />

- Defined symbology<br />

• Work across <strong>ArcGIS</strong> system


Military feature layer packages<br />

• Where military features are<br />

stored<br />

• Layer Packages on<br />

<strong>ArcGIS</strong>.com<br />

- Military Overlay<br />

- Friendly Operations<br />

- Hostile Operations<br />

- Neutral Operations<br />

- Emergency Management<br />

- Others, …<br />

• Geodatabase schema,<br />

symbols, label expressions


Types of features<br />

• Units, Equipment, Installations (UEI)<br />

• Operations features


UEI features<br />

• Units<br />

- Engineer platoon, Artillery battery<br />

• Equipment<br />

- Armored personnel carrier, UAV<br />

• Installation<br />

- Power plant, Raw material production<br />

• Events<br />

- IED, Carjacking, Ambush<br />

• Point features<br />

• Create symbols from layer packages<br />

and style files


Operations features<br />

• Can be points, lines or<br />

areas<br />

• Tasks, objectives, maneuver<br />

and fire features<br />

• Layers in military feature<br />

layer packages<br />

• Use predefined symbols


Graphic Modifiers<br />

• Show size or capability of a<br />

UEI<br />

• Types:<br />

- Capability<br />

- Mobility<br />

- Echelon<br />

- Headquarters<br />

• Marker symbols<br />

• Added to base symbol as<br />

symbol layers


Text Modifiers<br />

• Descriptive text<br />

• Name, speed, Higher<br />

<strong>for</strong>mation<br />

• UEI or operations features<br />

• Attribute fields in each<br />

feature<br />

• Label classes & label<br />

expressions<br />

• Built into military feature<br />

layer packages<br />

• Maplex Label Engine <strong>for</strong><br />

placement


Symbols in style files<br />

• UEI frame and icon as marker symbols<br />

• Graphic modifiers as marker symbols<br />

• Searchable, each symbol is tagged<br />

• 13 style files in <strong>ArcGIS</strong>, including:<br />

- C2 Military Operations<br />

- C2 UEI Air Track<br />

- C2 UEI Ground Track Equipment<br />

- C2 UEI Ground Track Installations<br />

- C2 UEI Ground Track Units<br />

- C2 UEI Sea Surface Track<br />

- & more …


Military features on the web<br />

• Military features work in Server<br />

• Publish military features as maps<br />

• Map service <strong>for</strong> display<br />

• Feature service <strong>for</strong> editing


Situation Awareness Template<br />

• Watch position reports<br />

update<br />

• View & add operations<br />

reports<br />

- EOD 9-line<br />

- MedEvac<br />

- SPOT/SALUTE<br />

- SigActs<br />

• Feature Service to update<br />

positions<br />

• <strong>ArcGIS</strong> API <strong>for</strong> Silverlight


What is in the template?<br />

• Web application template<br />

• Situation Viewer<br />

- Desktop or large touch screen<br />

• Reporting schema <strong>for</strong> SDE<br />

• Reporting MXD <strong>for</strong> publishing<br />

report<br />

• Sample simulators


Situation Awareness Template


Define new UEI types<br />

• Many combinations<br />

• Build from layers and symbols<br />

• Layers from Layer Packages<br />

• Symbols from style files<br />

• Symbol = Primary Symbol +<br />

Modifiers


Define new UEI in ArcMap


Define new UEI types: Layers<br />

• Layers in layer packages<br />

• Friendly Operations contains:<br />

- Friendly Units<br />

- Friendly Equipment<br />

- Friendly Installations<br />

- Friendly Operations Point<br />

- Friendly Operations Line<br />

- Friendly Operations Area<br />

- Friendly SIGINT<br />

ArcObjects: FeatureLayer


Define new UEI types: Symbols<br />

• Stored in style files<br />

- 8 style files <strong>for</strong> UEI features<br />

• Symbols<br />

- Picture Markers<br />

- Each has a tag<br />

- SIDC can be used to search tags<br />

ArcObjects: ServerStyleGallery


Symbol ID Code<br />

Coding<br />

Scheme<br />

Battle<br />

Dimension/<br />

Category<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15<br />

Standard<br />

Identity/<br />

Exercise<br />

Amplifying<br />

Descriptor<br />

Status/<br />

Operational<br />

Condition<br />

Function ID<br />

Symbol<br />

Modifier/<br />

Echelon<br />

Country<br />

Code<br />

Order<br />

Of<br />

Battle<br />

C2 symbology: Units, equipment, and installations (UEI)<br />

C2 symbology: Military operations<br />

Signals intelligence symbology (SigInt)<br />

Stability operations symbology (SO)<br />

Emergency management symbols (EMS)


Primary Symbol<br />

• Outer frame and inner icon<br />

• Search style file<br />

• Use Symbol ID Code positions 1 through 10<br />

- If SIDC is SFGPUCI---AFUSG<br />

- I would search using SFGPUCI--------<br />

- Use dash “-” <strong>for</strong> positions 11 through 15<br />

ArcObjects: PictureMarkerSymbol, IStyleGalleryItem2


Graphic Modifiers<br />

• Add to primary symbol<br />

• Two general types<br />

- Frame modifiers<br />

- Other modifiers<br />

- Mobility, echelon, etc.<br />

• Search “modifier” in UEI<br />

style files<br />

ArcObjects: ServerStyleGallery, PictureMarkerSymbol


ArcObjects classes<br />

• ServerStyleGallery<br />

- Access and manage Style Gallery (style files)<br />

• IStyleGalleryItem2<br />

- Search the Tags property<br />

• PictureMarkerSymbol<br />

- Use and create military feature symbols<br />

• FeatureLayer<br />

- Display military feature data in a map


Vehicle Commander Application


Vehicle Commander reference application<br />

• Sample reference application with source code<br />

- Military scenario <strong>for</strong> a vehicle commander<br />

- Uses new <strong>ArcGIS</strong> Runtime Qt SDK<br />

• Vehicle commanders can see:<br />

- Rich Basemaps with seamless pan/zoom<br />

- Messages including 2525C symbols<br />

- Current vehicle location, status of blue <strong>for</strong>ces,<br />

and events<br />

• Vehicle commanders can create<br />

- Reports – SPOT, SIGACTS, MEDEVAC<br />

- Waypoint routing


<strong>ArcGIS</strong> Qt SDK: Features<br />

• Message Parsing Framework<br />

- Receive/Display Messages<br />

- Compose/Send Messages<br />

• Symbol Searching<br />

• GPS Display<br />

• Interactive user experience<br />

- OpenGL based rendering<br />

- Compact application footprint


<strong>ArcGIS</strong> Qt SDK: Message Parsing<br />

• Receiving/Displaying Messages<br />

- Define a message schema (if necessary)<br />

- Connect to a transmission protocol<br />

- Convert incoming data<br />

- Send to message parsing object<br />

- MessageParser::setMessageStream(const QString&)<br />

- Creates a graphic(s)<br />

- Creates and/or adds the graphic(s) to the graphics layer(s)<br />

defined by the message schema(s)


<strong>ArcGIS</strong> Qt SDK: Message Parsing (continued)<br />

• Compose/Send Messages<br />

- Define the message type<br />

- Populate message attributes<br />

- Populate symbol in<strong>for</strong>mation<br />

- Populate geometry in<strong>for</strong>mation<br />

- Package and send over a transmission protocol


<strong>ArcGIS</strong> Qt SDK: Symbol Searching<br />

• The SymbolDictionary object allows symbol search<br />

capabilities.<br />

- Symbol data derived from <strong>ArcGIS</strong> style files<br />

- Search Methods<br />

- Text based search<br />

- Filter/Tag based searching<br />

- Apply/Remove filters<br />

- Query keywords by frequency<br />

- Capable of fetching Symbol ID, frame/icon image, as<br />

well as other attributes


Filter Example<br />

* Error checking omitted <strong>for</strong> clarity


<strong>ArcGIS</strong> Qt SDK: GPS capabilities<br />

• Exposed through the Map<br />

- Define the mode<br />

- Gps mode, free pan mode, etc<br />

- MapView::setPositionUpdateMode(PositionUpdateMode)<br />

- Update self location & self heading<br />

- MapView::setMyLocation(const QPointF&)<br />

- MapView::setMyHeading(const double&)<br />

• Note, pan operations override Gps mode

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!