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