Search code examples
c#windows-phone-8windows-runtimewindows-phone-8.1

Display custom Map route on MapControl Windows phone


I can find route between two points using

MapRouteFinderResult routeResult = await MapRouteFinder.GetDrivingRouteAsync(startPoint,endPoint,MapRouteOptimization.Time,MapRouteRestrictions.None,290);
MapRouteView viewOfRoute = new MapRouteView(routeResult.Route);

What I want to do is create a Route object with my own waypoints, instead of giving the task to phone. One option is create a SVG myself and overlay it on Map How do I do it?


Solution

  • For completeness this is how you do it. A tidier way can be used but my example is to show the methodology. (Windows Phone 8.1)

    BasicGeoposition waypoint1 = new BasicGeoposition() { Latitude = lat1, Longitude = long1 };
    BasicGeoposition waypoint2 = new BasicGeoposition() { Latitude = lat2, Longitude = long2 };
    BasicGeoposition waypoint3 = new BasicGeoposition() { Latitude = lat3, Longitude = long3 };
    
    List<Geopoint> positions = new List<Geopoint>();
    
    positions.Add(new Geopoint(waypoint1));
    positions.Add(new Geopoint(waypoint2));
    positions.Add(new Geopoint(waypoint3));
    
    // Get the route between the points.
    MapRouteFinderResult routeResult = await MapRouteFinder.GetWalkingRouteFromWaypointsAsync(positions);