Building Solution with ArcGIS Engine and .
Net
Hisham Abdel Massih
Mike Rudden
UC 2007 Tech Session 1
Overview
• Introduction to ArcGIS Engine
• ArcGIS Engine .NET Developer Kit
• Developer resources and tools
• Out-of-the-box functionality
UC 2007 Tech Session 2
What is ArcGIS Engine?
• A complete set of embeddable GIS components for
application development
• ArcObjects consumed and extended by developers
ArcGIS Desktop ArcGIS Engine ArcGIS Server
UC 2007 Tech Session 3
Two ArcGIS Engine parts
• Deployment: ArcGIS Engine Runtime
• Development: ArcGIS Engine Developer kit
UC 2007 Tech Session 4
ArcGIS Engine Runtime
• Set of ArcObjects libraries and components that make up
ArcGIS Engine
• Two levels of product licensing available
– Standard Runtime = ArcView
– Geodatabase Update = ArcEditor
• Includes a number of ArcGIS extensions
– 3D Analyst, Network Analyst, Spatial Analyst…
• Packaged as a redistributable setup.exe (.msi)
UC 2007 Tech Session 5
ArcGIS Engine Runtime: New with 9.2
• Support for .NET 2.0 framework
• ArcObjects libraries have been added
– Animation, ArcWeb, GeodatabaseExtensions, Controls,
Geoprocessor…
• Support for more ArcGIS extensions
– Data Interopability, Maplex, Schematics and Tracking
UC 2007 Tech Session 6
ArcGIS Engine Developer Kit for .NET
• SDK for developers to build custom ArcGIS applications
• Includes the following:
– ArcGIS Engine Runtime
– .NET developer help system
and Samples
– Rich set of visual development
components
– Many pre-built commands,
toolbars and menus
– IDE integration into Visual Studio .NET
UC 2007 Tech Session 7
ArcGIS Engine Developer Kit: New with 9.2
• Enhancements:
– .NET developer help system
– Visual Studio IDE integration
– Visual controls and commands
– Samples
UC 2007 Tech Session 8
.NET Developer Help System
• Redesigned developer help system
• Reorganized and enhanced
– New content
– Articles: Conceptual, How To, Walk-through
– Getting started sections
– Enhanced licensing and deployment documentation
– Easy to use query and search tools
• Design was driven by real-world development scenarios
DEMO
UC 2007 Tech Session 9
ArcGIS Engine 9.2 VS 2005 Integration
• Three levels of integration
– Solution
– Project
– Class
• Similar VS 2003 integration
• Solution Level
– ArcGIS Code Converter
– Project Templates
ArcGIS Engine 9.2 VS 2005 Integration
• Project Level
– Add Class Wizard
– Add ArcGIS Reference
– ArcGIS Toolbox Reference
ArcGIS Engine 9.2 VS 2005 Integration
• Class Level
– Component Category Registrar
– ArcGIS License Initializer
– Snippets
Enhanced Developers Controls
• ToolbarControl
– Show hidden items, menu tracking, vertical orientation, color fading
– Create *new* menus and palettes
• TOCControl
– Layer drag, drop and reordering
– Selected layer
• MapControl and PageLayoutControl
– Mouse wheel navigation
• New SymbologyControl
DEMO
UC 2007 Tech Session 13
Installation, licensing and deployment at 9.2
• Installation
– ArcGIS Developer Kit install doesn’t install the Runtime
– All developers must install the runtime and the developer kit
• Licensing
– All applications must be licensed
– Will fail to run at 9.2
• Deployment
– ArcGIS Desktop now installs ArcGIS Engine Runtime!
– No longer need to install the Runtime on Desktop machines
UC 2007 Tech Session 14
How do you get started?
1. Install Visual Studio 2005 (Express or Professional)
– .NET 2.0 SDK and Runtime
– http://msdn.microsoft.com/vstudio/express/
2. Install ArcGIS Engine Runtime
– .Net PIA automatically installed
3. Install ArcGIS Engine Developer Kit for .NET
4. Authorize system for development
UC 2007 Tech Session 15
Building ArcGIS Engine applications: Steps
1. Start a new project with the VS 2005
• Add Engine controls manually
• Use IDE integration tools
2. License the application
3. Add commands and tools
4. Use code snippets where possible
DEMO
UC 2007 Tech Session 16
ArcGIS Engine .NET Developer Kit
–
“Out-of-the-box” Functionality
UC 2007 Tech Session 17
2D Mapping and Inquiry Commands
• Open and save map documents (.mxd, .mxt, .lyr)
• Map navigation
• Measure
• Select features
• Find and identify features, swipe
• Add data (SDE data support with 9.2 sp2)
• MutiItem Bookmarks
• New 9.2 commands GUI related
DEMO
UC 2007 Tech Session 18
Editing Commands
• 9.2 added new commands for simple editing
– Start and stop editing
– Select an edit layer
– Create and edit features
– Show feature inspector
– Edit attributes
– Configure snapping environment
• 9.3 will add more editing enhancement
– The ESRI Developer Network Road Ahead
DEMO
UC 2007 Tech Session 19
Network Analyst Extension
• Add and remove stops
• Set barriers
• Create routes and service areas
• Show driving directions
DEMO
UC 2007 Tech Session 20
3D Mapping and Inquiry Commands
• Load 3dd and sxd documents
• Navigate, walk, fly, spin globe or scene
• Identify, find, swipe
• Measure
DEMO
UC 2007 Tech Session 21
Geoprocessing
• New Geoprocessing framework and tools
• New API for .NET developers
• Run existing tools, scripts and models
• Author new tools
• Licensing level
• Technical Workshop
– Using Geoprocessing Tools in .NET and Java with ArcGIS Engine
DEMO
UC 2007 Tech Session 22
Ink Commands
• Primarily for sketching and mark-up on tablet PCs
• Change pen thickness
• Create, edit, erase and find sketchs
• Convert ink sketches to graphics
DEMO
UC 2007 Tech Session 23
ArcWeb Commands
• Access ArcWeb services
• Login
• Find places
• Routing
• Account
– ArcWeb subscription included with EDN (for development only)
– Create a trial account online as well
DEMO
UC 2007 Tech Session 24
Schematic Commands
• Schematic representation of networks
• Analyze, display, and manipulate schematic data
• 30+ Commands, Tools out of the box
DEMO
UC 2007 Tech Session 25
Tracking Analyst Extension
• New extension
• Add tracking
• Playback
• Analyses of temporal data
• Available through fine grained API only!
DEMO
UC 2007 Tech Session 26
Dynamic Display Commands
• High performance drawing
• Uses hardware acceleration
• Implement IDynamicLayer
– Use Layer base class to get started
• Available through fine grained API only!
DEMO
UC 2007 Tech Session 27
Summary
• ArcGIS Engine Developer Kit allows you to develop and
deploy applications quickly
• Many core software enhancements have been made
• Many enhancements have been made to the .NET SDK
• .NET developers will be even more productive than ever!
UC 2007 Tech Session 28
ArcGIS Engine at the User Conference
• Technical Workshops
– Advanced Building Solutions with ArcGIS Engine and .NET
(Tuesday June 21st 3:15-4:30, Room 15A)
(Thursday June 21st 10:30-11:45, Room 15A)
– The ESRI Developer Network Road Ahead
(Thursday June 21st 10:15-11:30, Exhibit Hall A)
• Special Interest Group meetings
– EDN Microsoft .NET SIG
(Wednesday June 20th 17:30-19:30, Room 6F)
UC 2007 Tech Sessions 29
ArcGIS Engine at the User Conference
• Demo theatre presentations
– Using the ArcGIS Engine Visual Studio 2005 Integration
Framework
(Tuesday June 19th 17:00-18:00)
– ArcGIS Engine and The Schematics Extension
(Wednesday June 20th 12:00-13:00)
– Migrating .NET ArcGIS Engine applications to Version 9.2
(Wednesday June 20th 15:00-16:00)
– Dynamic Display with ArcGIS Engine and .NET
(Wednesday June 20th 17:00-18:00)
– Implementing Tracking in ArcGIS Engine Applications
(Thursday June 21st 12:00-13:00)
UC 2007 Tech Sessions 30
Questions?
Don’t forget to fill out the survey
Thank you!
UC 2007 Tech Sessions 31