public void LoadRoutes(OverviewPolyline overviewPolyline) { foreach (LatLng line in DirectionsMethods.DecodePolyline(overviewPolyline.points)) { Lines.Add(line); } RoutesListUpdated?.Invoke(this, EventArgs.Empty); }
public async void SizedButton_Clicked(object sender, EventArgs e) { //JsonValue value = JsonValue.Parse(@"{ ""name"":""Prince Charming"", ..."); //JsonObject result = value as JsonObject; Location startLocation = await Geolocation.GetLastKnownLocationAsync(); NetworkAccess current = Connectivity.NetworkAccess; if (current == NetworkAccess.Internet) { double shortestDistance = 0; Models.Directions directions = new Models.Directions(); Location neareatPark = new Location(); foreach (Pin pin in MMap.Pins) { Location endLocation = new Location(pin.Position.Latitude, pin.Position.Longitude); Models.Directions tempDirections = await DirectionsMethods.GetDirectionsInfo(startLocation.Latitude, endLocation.Latitude, startLocation.Longitude, endLocation.Longitude); if (tempDirections != null) { double tempDistance = DirectionsMethods.GetDistance(tempDirections); if (shortestDistance == 0 || shortestDistance > tempDistance) { neareatPark = endLocation; shortestDistance = tempDistance; directions = tempDirections; } } } //map.MoveToRegion(MapSpan.FromCenterAndRadius(new Position(neareatPark.Latitude, neareatPark.Longitude), // Distance.FromKilometers(.1))); //foreach (Models.Route route in directions.Routes) //{ // foreach (Models.Leg leg in route.legs) // { // map.LoadRoutes(leg.steps); // } //} foreach (Models.Route route in directions.Routes) { MMap.LoadRoutes(route.overview_polyline); } } }