31
Building Solution with ArcGIS Engine and .Net Building Solution with ArcGIS Engine and .Net Hisham Abdel Massih Hisham Abdel Massih Mike Rudden Mike Rudden UC 2007 Tech Session UC 2007 Tech Session 1 1

Building Solutions With ArcGIS Engine and .NET

  • Upload
    staretr

  • View
    1.578

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Building Solutions With ArcGIS Engine and .NET

Building Solution with ArcGIS Engine and .NetBuilding Solution with ArcGIS Engine and .Net

Hisham Abdel MassihHisham Abdel MassihMike RuddenMike Rudden

UC 2007 Tech SessionUC 2007 Tech Session 11

Page 2: Building Solutions With ArcGIS Engine and .NET

OverviewOverview

•• Introduction to ArcGIS EngineIntroduction to ArcGIS Engine•• ArcGIS Engine .NET Developer KitArcGIS Engine .NET Developer Kit•• Developer resources and toolsDeveloper resources and tools•• OutOut--ofof--thethe--box functionalitybox functionality

UC 2007 Tech SessionUC 2007 Tech Session 22

Page 3: Building Solutions With ArcGIS Engine and .NET

What is ArcGIS Engine? What is ArcGIS Engine?

•• A complete set of embeddable GIS components for A complete set of embeddable GIS components for application developmentapplication development

•• ArcObjects consumed and extended by developersArcObjects consumed and extended by developers

UC 2007 Tech SessionUC 2007 Tech Session 33

ArcGIS ServerArcGIS Desktop ArcGIS Engine

Page 4: Building Solutions With ArcGIS Engine and .NET

Two ArcGIS Engine partsTwo ArcGIS Engine parts

•• Deployment: ArcGIS Engine RuntimeDeployment: ArcGIS Engine Runtime

•• Development: ArcGIS Engine Developer kit Development: ArcGIS Engine Developer kit

UC 2007 Tech SessionUC 2007 Tech Session 44

Page 5: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine RuntimeArcGIS Engine Runtime

•• Set of ArcObjects libraries and components that make up Set of ArcObjects libraries and components that make up ArcGIS EngineArcGIS Engine

•• Two levels of product licensing availableTwo levels of product licensing available–– Standard Runtime = ArcViewStandard Runtime = ArcView–– Geodatabase Update = ArcEditorGeodatabase Update = ArcEditor

•• Includes a number of ArcGIS extensionsIncludes a number of ArcGIS extensions–– 3D Analyst, Network Analyst, Spatial Analyst3D Analyst, Network Analyst, Spatial Analyst……

•• Packaged as a redistributable setup.exe (.msi)Packaged as a redistributable setup.exe (.msi)

UC 2007 Tech SessionUC 2007 Tech Session 55

Page 6: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine Runtime: New with 9.2ArcGIS Engine Runtime: New with 9.2

•• Support for .NET 2.0 frameworkSupport for .NET 2.0 framework

•• ArcObjects libraries have been added ArcObjects libraries have been added –– Animation, ArcWeb, GeodatabaseExtensions, Controls, Animation, ArcWeb, GeodatabaseExtensions, Controls,

GeoprocessorGeoprocessor……

•• Support for more ArcGIS extensionsSupport for more ArcGIS extensions–– Data Interopability, Maplex, Schematics and TrackingData Interopability, Maplex, Schematics and Tracking

UC 2007 Tech SessionUC 2007 Tech Session 66

Page 7: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine Developer Kit for .NETArcGIS Engine Developer Kit for .NET

•• SDK for developers to build custom ArcGIS applicationsSDK for developers to build custom ArcGIS applications

•• Includes the following:Includes the following:

–– ArcGIS Engine RuntimeArcGIS Engine Runtime

–– .NET developer help system .NET developer help system and Samplesand Samples

–– Rich set of visual development Rich set of visual development componentscomponents

–– Many preMany pre--built commands, built commands, toolbars and menustoolbars and menus

–– IDE integration into Visual Studio .NETIDE integration into Visual Studio .NETUC 2007 Tech SessionUC 2007 Tech Session 77

Page 8: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine Developer Kit: New with 9.2ArcGIS Engine Developer Kit: New with 9.2

•• Enhancements:Enhancements:

–– .NET developer help system.NET developer help system

–– Visual Studio IDE integrationVisual Studio IDE integration

–– Visual controls and commandsVisual controls and commands

–– SamplesSamples

UC 2007 Tech SessionUC 2007 Tech Session 88

Page 9: Building Solutions With ArcGIS Engine and .NET

.NET Developer Help System.NET Developer Help System

•• Redesigned developer help systemRedesigned developer help system

•• Reorganized and enhancedReorganized and enhanced–– New contentNew content–– Articles: Conceptual, How To, WalkArticles: Conceptual, How To, Walk--throughthrough–– Getting started sectionsGetting started sections–– Enhanced licensing and deployment documentationEnhanced licensing and deployment documentation–– Easy to use query and search toolsEasy to use query and search tools

•• Design was driven by realDesign was driven by real--world development scenariosworld development scenarios

UC 2007 Tech SessionUC 2007 Tech Session 99

DEMODEMO

Page 10: Building Solutions With ArcGIS Engine and .NET

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

Page 11: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine 9.2 VS 2005 Integration

• Project Level– Add Class Wizard– Add ArcGIS Reference– ArcGIS Toolbox Reference

Page 12: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine 9.2 VS 2005 Integration

• Class Level– Component Category Registrar– ArcGIS License Initializer– Snippets

Page 13: Building Solutions With ArcGIS Engine and .NET

Enhanced Developers ControlsEnhanced Developers Controls

•• ToolbarControlToolbarControl–– Show hidden items, menu tracking, vertical orientation, color faShow hidden items, menu tracking, vertical orientation, color fadingding–– Create *new* menus and palettesCreate *new* menus and palettes

•• TOCControlTOCControl–– Layer drag, drop and reorderingLayer drag, drop and reordering–– Selected layerSelected layer

•• MapControl and PageLayoutControlMapControl and PageLayoutControl–– Mouse wheel navigationMouse wheel navigation

•• New SymbologyControlNew SymbologyControl

UC 2007 Tech SessionUC 2007 Tech Session 1313

DEMODEMO

Page 14: Building Solutions With ArcGIS Engine and .NET

Installation, licensing and deployment at 9.2Installation, licensing and deployment at 9.2

•• InstallationInstallation–– ArcGIS Developer Kit install doesnArcGIS Developer Kit install doesn’’t install the Runtimet install the Runtime–– All developers must install the runtime and the developer kitAll developers must install the runtime and the developer kit

•• LicensingLicensing–– All applications must be licensedAll applications must be licensed–– Will fail to run at 9.2Will fail to run at 9.2

•• DeploymentDeployment–– ArcGIS Desktop now installs ArcGIS Engine Runtime!ArcGIS Desktop now installs ArcGIS Engine Runtime!–– No longer need to install the Runtime on Desktop machinesNo longer need to install the Runtime on Desktop machines

UC 2007 Tech SessionUC 2007 Tech Session 1414

Page 15: Building Solutions With ArcGIS Engine and .NET

How do you get started?How do you get started?

1.1. Install Visual Studio 2005 (Express or Professional)Install Visual Studio 2005 (Express or Professional)–– .NET 2.0 SDK and Runtime .NET 2.0 SDK and Runtime –– http://msdn.microsoft.com/vstudio/express/http://msdn.microsoft.com/vstudio/express/

2.2. Install ArcGIS Engine RuntimeInstall ArcGIS Engine Runtime–– .Net PIA automatically installed.Net PIA automatically installed

3.3. Install ArcGIS Engine Developer Kit for .NETInstall ArcGIS Engine Developer Kit for .NET

4.4. Authorize system for developmentAuthorize system for development

UC 2007 Tech SessionUC 2007 Tech Session 1515

Page 16: Building Solutions With ArcGIS Engine and .NET

Building ArcGIS Engine applications: StepsBuilding ArcGIS Engine applications: Steps

1.1. Start a new project with the VS 2005Start a new project with the VS 2005•• Add Engine controls manuallyAdd Engine controls manually•• Use IDE integration toolsUse IDE integration tools

2.2. License the applicationLicense the application

3.3. Add commands and toolsAdd commands and tools

4.4. Use code snippets where possibleUse code snippets where possible

UC 2007 Tech SessionUC 2007 Tech Session 1616

DEMODEMO

Page 17: Building Solutions With ArcGIS Engine and .NET

ArcGIS Engine .NET Developer Kit ArcGIS Engine .NET Developer Kit ––

““OutOut--ofof--thethe--boxbox”” FunctionalityFunctionality

UC 2007 Tech SessionUC 2007 Tech Session 1717

Page 18: Building Solutions With ArcGIS Engine and .NET

2D Mapping and Inquiry Commands2D Mapping and Inquiry Commands

•• Open and save map documents (.mxd, .mxt, .lyr)Open and save map documents (.mxd, .mxt, .lyr)•• Map navigationMap navigation•• MeasureMeasure•• Select featuresSelect features•• Find and identify features, swipeFind and identify features, swipe•• Add data (SDE data support with 9.2 sp2)Add data (SDE data support with 9.2 sp2)•• MutiItem BookmarksMutiItem Bookmarks

•• New 9.2 commands GUI relatedNew 9.2 commands GUI related

UC 2007 Tech SessionUC 2007 Tech Session 1818

DEMODEMO

Page 19: Building Solutions With ArcGIS Engine and .NET

Editing CommandsEditing Commands

•• 9.2 added new commands for simple editing9.2 added new commands for simple editing–– Start and stop editingStart and stop editing–– Select an edit layerSelect an edit layer–– Create and edit featuresCreate and edit features–– Show feature inspectorShow feature inspector–– Edit attributesEdit attributes–– Configure snapping environmentConfigure snapping environment

•• 9.3 will add more editing enhancement 9.3 will add more editing enhancement –– The ESRI Developer Network Road AheadThe ESRI Developer Network Road Ahead

UC 2007 Tech SessionUC 2007 Tech Session 1919

DEMODEMO

Page 20: Building Solutions With ArcGIS Engine and .NET

Network Analyst ExtensionNetwork Analyst Extension

•• Add and remove stopsAdd and remove stops•• Set barriersSet barriers•• Create routes and service areasCreate routes and service areas•• Show driving directionsShow driving directions

UC 2007 Tech SessionUC 2007 Tech Session 2020

DEMODEMO

Page 21: Building Solutions With ArcGIS Engine and .NET

3D Mapping and Inquiry Commands3D Mapping and Inquiry Commands

•• Load 3dd and sxd documentsLoad 3dd and sxd documents•• Navigate, walk, fly, spin globe or sceneNavigate, walk, fly, spin globe or scene•• Identify, find, swipeIdentify, find, swipe•• MeasureMeasure

UC 2007 Tech SessionUC 2007 Tech Session 2121

DEMODEMO

Page 22: Building Solutions With ArcGIS Engine and .NET

GeoprocessingGeoprocessing

•• New Geoprocessing framework and toolsNew Geoprocessing framework and tools•• New API for .NET developersNew API for .NET developers•• Run existing tools, scripts and modelsRun existing tools, scripts and models•• Author new toolsAuthor new tools•• Licensing levelLicensing level

•• Technical WorkshopTechnical Workshop–– Using Geoprocessing Tools in .NET and Java with ArcGIS EngineUsing Geoprocessing Tools in .NET and Java with ArcGIS Engine

UC 2007 Tech SessionUC 2007 Tech Session 2222

DEMODEMO

Page 23: Building Solutions With ArcGIS Engine and .NET

Ink Commands Ink Commands

•• Primarily for sketching and markPrimarily for sketching and mark--up on tablet PCsup on tablet PCs•• Change pen thicknessChange pen thickness•• Create, edit, erase and find sketchsCreate, edit, erase and find sketchs•• Convert ink sketches to graphicsConvert ink sketches to graphics

UC 2007 Tech SessionUC 2007 Tech Session 2323

DEMODEMO

Page 24: Building Solutions With ArcGIS Engine and .NET

ArcWeb CommandsArcWeb Commands

•• Access ArcWeb servicesAccess ArcWeb services•• LoginLogin•• Find placesFind places•• RoutingRouting

•• AccountAccount–– ArcWeb subscription included with EDN (for development only)ArcWeb subscription included with EDN (for development only)–– Create a trial account online as wellCreate a trial account online as well

UC 2007 Tech SessionUC 2007 Tech Session 2424

DEMODEMO

Page 25: Building Solutions With ArcGIS Engine and .NET

Schematic CommandsSchematic Commands

•• Schematic representation of networksSchematic representation of networks•• Analyze, display, and manipulate schematic dataAnalyze, display, and manipulate schematic data•• 30+ Commands, Tools out of the box30+ Commands, Tools out of the box

UC 2007 Tech SessionUC 2007 Tech Session 2525

DEMODEMO

Page 26: Building Solutions With ArcGIS Engine and .NET

Tracking Analyst ExtensionTracking Analyst Extension

•• New extensionNew extension•• Add trackingAdd tracking•• PlaybackPlayback•• Analyses of temporal dataAnalyses of temporal data

•• Available through fine grained API only!Available through fine grained API only!

UC 2007 Tech SessionUC 2007 Tech Session 2626

DEMODEMO

Page 27: Building Solutions With ArcGIS Engine and .NET

Dynamic Display CommandsDynamic Display Commands

•• High performance drawingHigh performance drawing•• Uses hardware accelerationUses hardware acceleration•• Implement IDynamicLayerImplement IDynamicLayer

–– Use Layer base class to get started Use Layer base class to get started

•• Available through fine grained API only!Available through fine grained API only!

UC 2007 Tech SessionUC 2007 Tech Session 2727

DEMODEMO

Page 28: Building Solutions With ArcGIS Engine and .NET

SummarySummary

•• ArcGIS Engine Developer Kit allows you to develop and ArcGIS Engine Developer Kit allows you to develop and deploy applications quicklydeploy applications quickly

•• Many core software enhancements have been madeMany core software enhancements have been made

•• Many enhancements have been made to the .NET SDKMany enhancements have been made to the .NET SDK

•• .NET developers will be even more productive than ever!.NET developers will be even more productive than ever!

UC 2007 Tech SessionUC 2007 Tech Session 2828

Page 29: Building Solutions With ArcGIS Engine and .NET

2929

ArcGIS Engine at the User ConferenceArcGIS Engine at the User Conference

•• Technical WorkshopsTechnical Workshops–– Advanced Building Solutions with ArcGIS Engine and .NET Advanced Building Solutions with ArcGIS Engine and .NET

(Tuesday June 21(Tuesday June 21stst 3:153:15--4:30, Room 15A)4:30, Room 15A)(Thursday June 21(Thursday June 21stst 10:3010:30--11:45, Room 15A)11:45, Room 15A)

–– The ESRI Developer Network Road AheadThe ESRI Developer Network Road Ahead(Thursday June 21(Thursday June 21stst 10:1510:15--11:30, Exhibit Hall A)11:30, Exhibit Hall A)

•• Special Interest Group meetingsSpecial Interest Group meetings–– EDN Microsoft .NET SIG EDN Microsoft .NET SIG

(Wednesday June 20th 17:30(Wednesday June 20th 17:30--19:30, Room 6F)19:30, Room 6F)

UC 2007 Tech SessionsUC 2007 Tech Sessions

Page 30: Building Solutions With ArcGIS Engine and .NET

3030

ArcGIS Engine at the User ConferenceArcGIS Engine at the User Conference

•• Demo theatre presentationsDemo theatre presentations–– Using the ArcGIS Engine Visual Studio 2005 Integration Using the ArcGIS Engine Visual Studio 2005 Integration

FrameworkFramework(Tuesday June 19th 17:00(Tuesday June 19th 17:00--18:00)18:00)

–– ArcGIS Engine and The Schematics ExtensionArcGIS Engine and The Schematics Extension(Wednesday June 20th 12:00(Wednesday June 20th 12:00--13:00)13:00)

–– Migrating .NET ArcGIS Engine applications to Version 9.2Migrating .NET ArcGIS Engine applications to Version 9.2(Wednesday June 20th 15:00(Wednesday June 20th 15:00--16:00)16:00)

–– Dynamic Display with ArcGIS Engine and .NETDynamic Display with ArcGIS Engine and .NET(Wednesday June 20th 17:00(Wednesday June 20th 17:00--18:00)18:00)

–– Implementing Tracking in ArcGIS Engine ApplicationsImplementing Tracking in ArcGIS Engine Applications(Thursday June 21st 12:00(Thursday June 21st 12:00--13:00)13:00)

UC 2007 Tech SessionsUC 2007 Tech Sessions

Page 31: Building Solutions With ArcGIS Engine and .NET

3131

Questions?Questions?

DonDon’’t forget to fill out the surveyt forget to fill out the survey

Thank you!Thank you!

UC 2007 Tech SessionsUC 2007 Tech Sessions