2016-05-16 6 views

Antwort

0

Ja: Holen Sie sich eine Fahr-oder Fußweg und Richtungen durch den Aufruf der Methoden der MapRouteFinder-Klasse - zum Beispiel GetDrivingRouteAsync oder GetWalkingRouteAsync. Das MapRouteFinderResult-Objekt enthält ein MapRoute-Objekt, auf das Sie über die Eigenschaft Route zugreifen. Wenn Sie eine Route anfordern, können Sie folgende Dinge festlegen: • Sie können nur einen Start- und Endpunkt angeben oder eine Reihe von Wegpunkten zur Berechnung der Route bereitstellen • Sie können Optimierungen angeben, z. B. den Abstand minimieren. • Sie können Einschränkungen festlegen, z. B. Autobahnen vermeiden.

Sie können Beispielcode wie diese verwenden:

private async void GetRouteAndDirections() 
    { 
     // Start at Microsoft in Redmond, Washington. 
     BasicGeoposition startLocation = new BasicGeoposition(); 
     startLocation.Latitude = 47.643; 
     startLocation.Longitude = -122.131; 
     Geopoint startPoint = new Geopoint(startLocation); 

     // End at the city of Seattle, Washington. 
     BasicGeoposition endLocation = new BasicGeoposition(); 
     endLocation.Latitude = 47.604; 
     endLocation.Longitude = -122.329; 
     Geopoint endPoint = new Geopoint(endLocation); 

     // Get the route between the points. 
     MapRouteFinderResult routeResult = 
      await MapRouteFinder.GetDrivingRouteAsync(
      startPoint, 
      endPoint, 
      MapRouteOptimization.Time, 
      MapRouteRestrictions.None); 

     if (routeResult.Status == MapRouteFinderStatus.Success) 
     { 
      // Display summary info about the route. 
      tbOutputText.Inlines.Add(new Run() 
      { 
       Text = "Total estimated time (minutes) = " 
        + routeResult.Route.EstimatedDuration.TotalMinutes.ToString() 
      }); 
      tbOutputText.Inlines.Add(new LineBreak()); 
      tbOutputText.Inlines.Add(new Run() 
      { 
       Text = "Total length (kilometers) = " 
        + (routeResult.Route.LengthInMeters/1000).ToString() 
      }); 
      tbOutputText.Inlines.Add(new LineBreak()); 
      tbOutputText.Inlines.Add(new LineBreak()); 

      // Display the directions. 
      tbOutputText.Inlines.Add(new Run() 
      { 
       Text = "DIRECTIONS" 
      }); 
      tbOutputText.Inlines.Add(new LineBreak()); 

      foreach (MapRouteLeg leg in routeResult.Route.Legs) 
      { 
       foreach (MapRouteManeuver maneuver in leg.Maneuvers) 
       { 
        tbOutputText.Inlines.Add(new Run() 
        { 
         Text = maneuver.InstructionText 
        }); 
        tbOutputText.Inlines.Add(new LineBreak()); 
       } 
      } 
     } 
     else 
     { 
      tbOutputText.Text = 
       "A problem occurred: " + routeResult.Status.ToString(); 
     } 

    } 

Mehr Infos hier: https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn631250.aspx#getting_a_route_and_directions

+0

Können Sie bitte als anwser markieren den Thread zu schließen? Danke vielmals :) –

Verwandte Themen