Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio...

39
Introduction to the StreetMap Mobile SDK Introduction to the StreetMap Mobile SDK Jeff Rogers Jeff Rogers Andrey Kozhevnikov Andrey Kozhevnikov Developer Summit 2008 Developer Summit 2008 1 1

Transcript of Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio...

Page 1: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Introduction to the StreetMap Mobile SDKIntroduction to the StreetMap Mobile SDK

Jeff RogersJeff RogersAndrey KozhevnikovAndrey Kozhevnikov

Developer Summit 2008Developer Summit 2008 11

Page 2: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

AgendaAgenda

•• OverviewOverview–– What is StreetMap MobileWhat is StreetMap Mobile

•• Positioning StreetMap MobilePositioning StreetMap Mobile•• Demonstration of Sample ApplicationDemonstration of Sample Application•• SDK ComponentsSDK Components

–– Major component areas and capabilitiesMajor component areas and capabilities•• Recommended PracticesRecommended Practices

–– Map DevelopmentMap Development–– LookupsLookups–– GRF filesGRF files–– Code SamplesCode Samples

•• Support ResourcesSupport Resources•• EDNEDN•• Discussion forumsDiscussion forums

Developer Summit 2008Developer Summit 2008 22

Page 3: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

OverviewOverview

Developer Summit 2008Developer Summit 2008 33

Page 4: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile SDKStreetMap Mobile SDK

•• A SDK that allows A SDK that allows developers to build developers to build custom navigation custom navigation solutionssolutions

•• Includes C++ and C# Includes C++ and C# Sample Application Sample Application and Source Codeand Source Code

Page 5: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile: Target PlatformsStreetMap Mobile: Target Platforms

•• Windows Mobile for Pocket PC 2003, 2003 SEWindows Mobile for Pocket PC 2003, 2003 SE•• Windows Mobile 5.0/6.0Windows Mobile 5.0/6.0•• Windows XP/XP Tablet/VistaWindows XP/XP Tablet/Vista•• CE 4.2 Support discontinued with Version 1.1CE 4.2 Support discontinued with Version 1.1

Developer Summit 2008Developer Summit 2008

Page 6: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile CapabilitiesStreetMap Mobile Capabilities•• Audible Turn by Turn NavigationAudible Turn by Turn Navigation•• On Board and Hybrid NavigationOn Board and Hybrid Navigation•• High Performance 2D and 2.5D MapsHigh Performance 2D and 2.5D Maps•• Feature Find (addresses, Poi) Feature Find (addresses, Poi) •• RoutingRouting•• GPS and Map Matching supportGPS and Map Matching support•• Global data supportGlobal data support

•• Maps (Tele Atlas or NAVTEQ data available.)Maps (Tele Atlas or NAVTEQ data available.)•• Custom Data toolkitCustom Data toolkit•• Takes in stops from ALR and NATakes in stops from ALR and NA

Page 7: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile Product ComponentsStreetMap Mobile Product Components

•• SDKSDK–– BinariesBinaries–– OMDsOMDs–– DocsDocs

•• Developer Reference GuideDeveloper Reference Guide•• .NAVMAP Description.NAVMAP Description•• Localization GuidesLocalization Guides•• GRF (Stops, Directions file) format descriptionGRF (Stops, Directions file) format description

–– Sample ApplicationsSample Applications•• C++ and C# .NETC++ and C# .NET

–– SDC GP Data ToolsSDC GP Data Tools•• SDC GP ToolsSDC GP Tools•• Tool HelpTool Help

•• TTS Installer TTS Installer –– Separate Installer by LicenseSeparate Installer by LicenseDeveloper Summit 2008Developer Summit 2008 77

Page 8: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile SDK: PrerequisitesStreetMap Mobile SDK: Prerequisites

•• Visual Studio 2005 Standard and up, or Visual Studio 2008 Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and upProfessional and up

•• C# or C++C# or C++

•• Familiarity withFamiliarity with•• .NET Framework 2.0/.NET Compact Framework 2.0.NET Framework 2.0/.NET Compact Framework 2.0•• COM COM

•• Windows Mobile 5.0/6.0 SDKs (Pocket PC)Windows Mobile 5.0/6.0 SDKs (Pocket PC)•• Active Sync 4.1 or higher installed on XP or WMDC on VistaActive Sync 4.1 or higher installed on XP or WMDC on Vista•• Access to mobile devices to test deploymentAccess to mobile devices to test deployment•• Access to GPS devicesAccess to GPS devices•• Data engineering and preparation skillsData engineering and preparation skills

Developer Summit 2008Developer Summit 2008

Page 9: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

PositioningPositioning

Developer Summit 2008Developer Summit 2008 99

Page 10: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Standalone Navigation ClientStandalone Navigation Client

•• Navigation ArchitectureNavigation Architecture•• On BoardOn Board•• HybridHybrid•• Off Board*Off Board*

Developer Summit 2008Developer Summit 2008 1010

StreetMap (Mobile Client)StreetMap (Mobile Client)NavigatingNavigatingTrackingTracking

ArcGIS ServerArcGIS ServerFindFindRoute OptimizationRoute OptimizationTrackingTrackingGeo DatabaseGeo DatabasePublishingPublishing

Web ServicesWeb Services

Page 11: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Component In a Fleet Management SolutionComponent In a Fleet Management Solution

•• Fleet Management ArchitectureFleet Management Architecture

Developer Summit 2008Developer Summit 2008 1111

StreetMap (Mobile Client)StreetMap (Mobile Client)Navigating (On Board/Hybrid)Navigating (On Board/Hybrid)TrackingTracking

ALR (Desktop)ALR (Desktop)PlanningPlanningRoute OptimizationRoute OptimizationDispatchingDispatchingMonitoringMonitoring

Web ServicesWeb Services

ArcGIS ServerArcGIS ServerFindFindRoute OptimizationRoute OptimizationTrackingTrackingGeo DatabaseGeo DatabasePublishingPublishing

Page 12: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

DemonstrationDemonstration

Developer Summit 2008Developer Summit 2008 1212

Page 13: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile StreetMap Mobile ArchitectureArchitecture

Developer Summit 2008Developer Summit 2008 1313

Page 14: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

SDK ComponentsSDK Components

• Map Document• Map Renderer• Lookup Functionality• Routing Components• GPS Components • Map Matching Components• Text To Speech with directions• Localization Components

Andrey

Page 15: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Map Document (NAVMAP)Map Document (NAVMAP)

•• .NAVMAP file.NAVMAP file–– Layers CollectionLayers Collection–– Rendering PropertiesRendering Properties–– ServicesServices

•• Lookup ServiceLookup Service•• Routing ServiceRouting Service•• Location Search (Reverse Geocoder)Location Search (Reverse Geocoder)

–– Rendering properties/schemas for day night mode, multi lingual Rendering properties/schemas for day night mode, multi lingual labelslabels

•• .NAVMAP file specification included with the SDK.NAVMAP file specification included with the SDK–– Write .NAVMAP manuallyWrite .NAVMAP manually

•• MXD2NAVMAP ConverterMXD2NAVMAP Converter–– GP ToolGP Tool

Developer Summit 2008Developer Summit 2008 1515Andrey

Page 16: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Data Access ComponentsData Access Components

•• Access to SDC Map LayersAccess to SDC Map Layers•• Map Document Returns the Collection of Feature Map Document Returns the Collection of Feature

ClassesClasses•• For each Feature classFor each Feature class

–– Browse for fields and field typesBrowse for fields and field types–– Make SQL queriesMake SQL queries–– Geometry propertiesGeometry properties

Developer Summit 2008Developer Summit 2008 1616Andrey

Page 17: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Map RendererMap Renderer•• Rendering Polylines, Polygons, Points, MultiRendering Polylines, Polygons, Points, Multi--pointspoints•• PolylinesPolylines

–– Color, width, outline, outline color, transparencyColor, width, outline, outline color, transparency

•• PolygonsPolygons–– Color, width, outline, outline color, fill color, transparencyColor, width, outline, outline color, fill color, transparency

•• Points and MultiPoints and Multi--pointspoints–– Symbol type (circle, square, raster symbol)Symbol type (circle, square, raster symbol)–– Color, size, symbol name (raster's), transparencyColor, size, symbol name (raster's), transparency

•• LabelsLabels–– Font name, height, color, effects (bold, italic, underlined)Font name, height, color, effects (bold, italic, underlined)

•• Custom Geometry Support through the APICustom Geometry Support through the API•• 2D Map and 2.5D Map Implemented with Different 2D Map and 2.5D Map Implemented with Different

Display transformationsDisplay transformationsDeveloper Summit 2008Developer Summit 2008 1717Andrey

Page 18: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Lookup FunctionalityLookup Functionality

•• Not Traditional Geocoding Not Traditional Geocoding –– simple model, no complex rules, locale specific logicsimple model, no complex rules, locale specific logic–– Suggest only available charactersSuggest only available characters

•• BB--Tree Approach (hierarchical)Tree Approach (hierarchical)–– Any SDC data sourceAny SDC data source–– Street Address and intersection models supportedStreet Address and intersection models supported–– POI lookups with categoriesPOI lookups with categories–– City LookupsCity Lookups

•• Lookups Have Several lnputsLookups Have Several lnputs–– Streets Streets -- Start from State, City, Street Name, House NumberStart from State, City, Street Name, House Number–– POI POI –– Category, state, city, nameCategory, state, city, name–– Supports optional fields State and City Optional find POI acrossSupports optional fields State and City Optional find POI across

entire databaseentire database

•• Customizable Structure Through GP ToolsCustomizable Structure Through GP ToolsDeveloper Summit 2008Developer Summit 2008 1818Andrey

Page 19: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Routing ComponentsRouting Components

•• New Simple Model (SM Mobile 1.1)New Simple Model (SM Mobile 1.1)•• Fill Collection of StopsFill Collection of Stops

–– Each Stop is X,Y and nameEach Stop is X,Y and name–– X,Y can come from Lookups, Map, GRF (XML)X,Y can come from Lookups, Map, GRF (XML)

•• Fill Routing OptionsFill Routing Options–– Quickest, Shortest, Restrictions, Trip Planning Settings, BarrieQuickest, Shortest, Restrictions, Trip Planning Settings, Barriersrs

•• Call Solve MethodCall Solve Method–– Returns directionsReturns directions–– Directions are geometry and text instructions plus summary of Directions are geometry and text instructions plus summary of

time and distancetime and distance

•• Solve RerouteSolve Reroute–– Optimizes knowledge of existing route to make back on track Optimizes knowledge of existing route to make back on track

adjustmentadjustmentDeveloper Summit 2008Developer Summit 2008 1919Andrey

Page 20: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

GPS ComponentsGPS Components

•• NMEA GPS implementationNMEA GPS implementation•• Interface with Serial and File GPSInterface with Serial and File GPS•• Fires events with GPS positionsFires events with GPS positions•• Using GPS for displaying location on mapUsing GPS for displaying location on map•• Using GPS for map matching capabilitiesUsing GPS for map matching capabilities•• Using GPS for tracking capabilitiesUsing GPS for tracking capabilities

Developer Summit 2008Developer Summit 2008Andrey

Page 21: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Map Matching ComponentsMap Matching Components

•• Takes X,Y coordinates to do map matching against the Takes X,Y coordinates to do map matching against the streets geometrystreets geometry

•• Respects speed, bearing, latency to correctly Respects speed, bearing, latency to correctly understand our current location on the networkunderstand our current location on the network

•• Determine on/off route stateDetermine on/off route state•• If off route you can use router to reIf off route you can use router to re--routeroute

Developer Summit 2008Developer Summit 2008 2121Andrey

Page 22: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Text To Speech with DirectionsText To Speech with Directions

•• Used for supporting voice guidanceUsed for supporting voice guidance•• Convert Abbreviations to full names depending on Convert Abbreviations to full names depending on

contextcontext•• Supports MSAPISupports MSAPI•• Supports Low Level APIs like LoquendoSupports Low Level APIs like Loquendo

Developer Summit 2008Developer Summit 2008 2222Andrey

Page 23: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Localization ComponentsLocalization Components

•• Localization of the UI through .NET resource filesLocalization of the UI through .NET resource files•• Localization of Driving Directions through Driving Localization of Driving Directions through Driving

Directions Language file (routing.lng)Directions Language file (routing.lng)•• Data localization supported through dataset (Unicode Data localization supported through dataset (Unicode

compliant) Multilanguage supportcompliant) Multilanguage support

Developer Summit 2008Developer Summit 2008 2323Andrey

Page 24: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Application LogicApplication Logic

•• What is the application Doing?What is the application Doing?•• Loading the Map DocumentLoading the Map Document•• UI for Lookup and Custom KeyboardUI for Lookup and Custom Keyboard

–– Shows available characters and list of candidatesShows available characters and list of candidates

•• Controlling MapControlling Map–– Zoom In, Zoom Out, Switching 2 and 2.5 DZoom In, Zoom Out, Switching 2 and 2.5 D

•• Defining Routing SettingsDefining Routing Settings•• Add Stops, Control StopsAdd Stops, Control Stops•• Advanced map Matching and TrackingAdvanced map Matching and Tracking•• Advance Voice GuidanceAdvance Voice Guidance

–– Prompts based on location relative to next maneuverPrompts based on location relative to next maneuver

•• Persists user settingsPersists user settingsDeveloper Summit 2008Developer Summit 2008 2424Andrey

Page 25: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Provided Sample ApplicationProvided Sample Application

•• Provided Sample application in C++ and C#Provided Sample application in C++ and C#•• Implements all standard system componentsImplements all standard system components

Developer Summit 2008Developer Summit 2008 2525Andrey

Page 26: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 2626

Useful TipsUseful Tips

Developer Summit 2008Developer Summit 2008 2626

Page 27: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

UI DesignUI Design

•• Design for the mobile user experienceDesign for the mobile user experience–– Large ButtonsLarge Buttons–– Minimize menu/window depthMinimize menu/window depth–– Make things easy to findMake things easy to find

•• Consider deployment platform and available UI Consider deployment platform and available UI capabilitiescapabilities–– Transparency for buttonsTransparency for buttons

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 2727

Page 28: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Data Development ConsiderationsData Development Considerations

•• SizeSize––Hardware ConstraintsHardware Constraints––UpdatesUpdates

•• PerformancePerformance––Data generalization and filteringData generalization and filtering

•• Form FactorForm Factor––Develop map document for the mobile deviceDevelop map document for the mobile device

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 2828

Page 29: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 2929

Data Development WorkflowData Development Workflow

•• PreprocessingPreprocessing––Data FilteringData Filtering

•• GP Tools GP Tools ––BlockingBlocking––GeneralizationGeneralization––Compression (Layers)Compression (Layers)––Routing IndexesRouting Indexes––Lookup IndexesLookup Indexes––Develop Map DocumentDevelop Map Document

Developer Summit 2008Developer Summit 2008 2929

Page 30: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3030

Building LookupsBuilding Lookups

•• Source Data is SDCSource Data is SDC•• Lookups follow hierarchies in the data (BLookups follow hierarchies in the data (B--Tree)Tree)

•• Hierarchies can be defined as one or more Hierarchies can be defined as one or more levelslevels

•• Hierarchies filled by unique values in fields Hierarchies filled by unique values in fields from SDC filefrom SDC file

Developer Summit 2008Developer Summit 2008 3030

StateState

StreetStreet

City 1City 1 City 2City 2

StreetStreetStreetStreet

STATE CITY STREET ADDR_F ADDR_T

CA Redlands New York 300 400

CA Redlands New York 400 500

CA Redlands Redlands 1000 2000

CA Yucaipa Oak Glenn 100 200

Page 31: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

More LookupsMore Lookups•• Alias and abbreviation tables supportedAlias and abbreviation tables supported•• GP Tools build the indexes and lookup service filesGP Tools build the indexes and lookup service files

–– .bxx is the index.bxx is the index–– .ls is the service file.ls is the service file

•• Services are implemented in the clientServices are implemented in the client•• C++ sample application can be used to test the indexesC++ sample application can be used to test the indexes

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3131

Page 32: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Building Map LayersBuilding Map Layers

•• Mobile maps are multiMobile maps are multi--scalescale•• Generalization is critical to support performance at Generalization is critical to support performance at

different scalesdifferent scales•• Generalization parameters are different than those for Generalization parameters are different than those for

desktop mapsdesktop maps•• Most line and polygon layers generalized 4 timesMost line and polygon layers generalized 4 times•• Guidelines can be applied for inserting custom layers to Guidelines can be applied for inserting custom layers to

an existing mapan existing map

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3232

Page 33: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Generalization ParametersGeneralization Parameters

•• Some generic values of generalization from DouglasSome generic values of generalization from Douglas--Peuker algorithm and scale ranges usedPeuker algorithm and scale ranges used

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3333

Gener_1; Prec_1 Gener_2; Prec_2 Gener_3; Prec_3 Gener_4; Prec_4 Gener_5; Prec_5Highways 0.0576577; 2200 0.0072072; 11000 0.00144144; 11000Major Roads 0.000432432; 22000 0.00002882; 55000Roads 0.00002882; 55000Major Water 0.0576577; 2200 0.0072072; 11000 0.00144144; 11000 0.000432432; 22000Water 0.000230626; 22000 0.00002882; 55000National Parks 0.0576577; 2200 0.0072072; 11000 0.00144144; 11000 0.000432432; 22000GreenBelt 0.000230626; 22000 0.00002882; 55000CityArea 0.0072072; 11000 0.000432432; 22000 0.00002882; 55000

ProvinceArea 0.0576577; 2200 0.0144144; 5500 0.0072072; 11000 0.000432432; 22000 0.00002882; 55000

UNIVERSAL values of generalization parameters for SM Mobile datamaxscale 5850000 2260000 847000 317000 117000 45700 17800 7313 3370

minscale 5850000 2260000 847000 317000 117000 45700 17800 7313 3370

Generalization 0.0576577 0.014414414 0.00144144 0.00144144 0.00144144 0.000432432 0.000432432 0.00002882 0.00002882 0.00002882Precision (MultBy) 2200 11000 11000 11000 11000 22000 22000 55000 55000 55000

Page 34: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Authoring the MapAuthoring the Map

•• Build an MXD for cartographic LayersBuild an MXD for cartographic Layers•• Consider the deployment map size and resolutionConsider the deployment map size and resolution•• Design map for mobileDesign map for mobile

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3434

Page 35: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Creating the NAVMAPCreating the NAVMAP

•• Run the MXD 2 NAVMAP ToolRun the MXD 2 NAVMAP Tool–– Select the MXDSelect the MXD–– Map the Routing ServiceMap the Routing Service–– Map the Lookup Service(s)Map the Lookup Service(s)•• Test the .NAVMAP fileTest the .NAVMAP fileC++ Sample ApplicationC++ Sample Application

•• Edit the .NAVMAP fileEdit the .NAVMAP file•• Integrate the .NAVMAP fileIntegrate the .NAVMAP file

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3535

Page 36: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3636

Importing Stops from External ApplicationsImporting Stops from External Applications•• SM Mobile consumers GRF filesSM Mobile consumers GRF files•• From StreetMap UI, Custom ALR toolbar, SM Mobile SDK From StreetMap UI, Custom ALR toolbar, SM Mobile SDK

Developer Summit 2008Developer Summit 2008 3636

•• FindFind•• Click on mapClick on map

Page 37: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

StreetMap Mobile: Code SamplesStreetMap Mobile: Code Samples

•• Map RenderingMap Rendering•• RoutingRouting•• GPSGPS•• Map MatchingMap Matching•• LookupLookup

Developer Summit 2008Developer Summit 2008

Microsoft Office d 97 - 2003 Docum

Page 38: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Support ResourcesSupport Resources

ArcGIS Server 9.2 FinalArcGIS Server 9.2 Final 3838

•ESRI Showcase•Mobile Island (StreetMap Team)

•ESRI Developers Network (EDN) website• http://edn.esri.com

Page 39: Introduction to the StreetMap Mobile SDK · StreetMap Mobile SDK: Prerequisites • Visual Studio 2005 Standard and up, or Visual Studio 2008 Professional and up • C# or C++ •

Further questions?Further questions?

Developer Summit 2008Developer Summit 2008 3939