async void Trasa(Geopoint start, Geopoint stop) { var wynik = await MapRouteFinder.GetDrivingRouteAsync(start, stop); if (wynik.Status == MapRouteFinderStatus.Success) { var trasa = wynik.Route; var trasaNaMape = new MapRouteView(wynik.Route) { RouteColor = Windows.UI.Colors.Blue }; MapaNawigacja.Routes.Add(trasaNaMape); await MapaNawigacja.TrySetViewBoundsAsync(trasa.BoundingBox, new Thickness(25), MapAnimationKind.Bow); } else { var dlg = new Windows.UI.Popups.MessageDialog(wynik.Status.ToString(), DaneGeograficzne.opisCelu); await dlg.ShowAsync(); } }
protected override async void OnNavigatedTo(NavigationEventArgs e) { if (DaneGeograficzne.opisCelu == null) { return; } var pkt = new Geopoint(DaneGeograficzne.pktStartowy); MapIcon start = new MapIcon() { Location = pkt, Title = "Tu jesteś" }; MapaNawigacja.MapElements.Add(start); var pktCelu = new Geopoint(DaneGeograficzne.pktDocelowy); MapaNawigacja.MapElements.Add( new MapIcon { Title = DaneGeograficzne.opisCelu, Location = pktCelu }); Trasa(pkt, pktCelu); MapPolyline trasaLotem = new MapPolyline { StrokeColor = Windows.UI.Colors.Black, StrokeThickness = 3, StrokeDashed = true, Path = new Geopath(new List <BasicGeoposition> { DaneGeograficzne.pktStartowy, DaneGeograficzne.pktDocelowy }), }; MapaNawigacja.MapElements.Add(trasaLotem); await MapaNawigacja.TrySetViewAsync(new Geopoint(DaneGeograficzne.pktStartowy), 8); var komunikat = new Windows.UI.Popups.MessageDialog(DaneGeograficzne.distance + " km", $"Odległość od Twojej lokalizacji do {DaneGeograficzne.opisCelu} to:"); await komunikat.ShowAsync(); }