Creating applications using Network Analysis

Newtork Analysis allows you to easily find routes, find directions, find the closest facility or calculate service areas in you ArcGIS Runtime application.

With the Route task, you can retrieve routes and directions between a set of input features. To find routes and directions, use the ArcGIS Runtime SDK for WPF's RouteTask class.

The Closest Facility Task finds a route, directions and travel cost (e.g. time/distance) from a defined set of incidents to a defined set of facilities. To find the closest facilities, use the ArcGIS Runtime SDK for WPF's RouteClosestFacilityTask class.

The Service Area Task finds the area that can be accessed or serviced from a defined set of locations. To find service areas, use the ArcGIS Runtime SDK for WPF's RouteServiceAreaTask class.

Since the Network Analysis tasks are built on the advanced capabilities of ArcGIS for Server's network analysis services, they offer many options and can take many parameters into account. All the Network Analysis tasks take into account parameters parameters such as barriers, time of day, U-turn restrictions, and impedance. For instance when solving a route, stops can be are visited in the optimal order (as opposed to the order defined); barriers can be defined that must be routed around; and impedance attributes (for example, speed limit, traffic, pipe diameter, and so on) can be taken into account.

All these tasks require the REST endpoint of a network analysis service. To create such a service, you will need to create a network dataset using ArcGIS Network Analyst extension, then publish that dataset to ArcGIS for Server.

Alternatively, to calculate driving routes in the US, Canada, or Europe, you can use ArcGIS Online's routing services. These services can be used without charge up to 5,000 times per year for non-commercial purposes, or by subscription for commercial purposes or more than 5,000 annual uses.

As with all the tasks, initialize the Route task either in a XAML resource dictionary or .NET code (that is, code-behind), then execute and process the task's results in code. The Route task does not contain any visual components, so it cannot be interacted with via XAML. This rest of this document will focus on manipulating the task in code. Note, however, that you will typically define an interface for the task's input and output primarily in XAML. For instance, you may use a Map and a Button that initializes a Draw object to accept input points and use a GraphicsLayer and StackPanel to display the output route and directions. For examples of implementing a Route task's input and output interfaces, refer to the routing samples in the Interactive SDK. For step-by-step walkthroughs of implementing similar functionality, refer to the Querying the Map, Finding Features in the Map, and Identifying Features on the Map topics.

1/27/2015