private void RoutesListBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { var lb = sender as ListBox; if (lb == null || lb.SelectedIndex < 0) { return; } var selectedRoute = lb.SelectedItem as BotRoute; if (selectedRoute == null) { return; } ClearRouteBuilder(); var start = true; foreach (var wp in selectedRoute.InitialWp) { CreateNewMarker(new PointLatLng(wp.Latitude, wp.Longitude), start); if (start) { start = false; } } RouteCreatorMap.ZoomAndCenterMarkers(null); }
private void RoutesListBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { var lb = sender as ListBox; if (lb == null || lb.SelectedIndex < 0) { return; } var selectedRoute = lb.SelectedItem as BotRoute; if (selectedRoute == null) { return; } ClearRouteBuilder(); var start = true; foreach (var wp in selectedRoute.InitialWp) { CreateNewMarker(new PointLatLng(wp.Latitude, wp.Longitude), start); if (start) { start = false; } } double dist; var mid = HeatMapHelper.GetMidPointAndRadius( selectedRoute.InitialWp.Select(x => new PointLatLng(x.Latitude, x.Longitude)), out dist); RunDataTasks(mid, dist); RouteCreatorMap.ZoomAndCenterMarkers(null); }
private void CreateNewMarker(Point point, bool starter) { _builded = false; var rPoint = point; var mapPos = RouteCreatorMap.FromLocalToLatLng((int)rPoint.X, (int)rPoint.Y); CreateNewMarker(mapPos, starter); }
private void ImportRouteSubmit_Click(object sender, RoutedEventArgs e) { ImportExportRoute.Visibility = Visibility.Collapsed; var encRoute = ImportExportRouteText.Text; if (encRoute == null) { return; } List <GoogleLocation> decodedPoints; try { decodedPoints = RoutingUtils.DecodePolyline(encRoute).ToList(); } catch (Exception) { return; } ClearRouteBuilder(); var i = 0; foreach (var point in decodedPoints) { var pointlatlon = new PointLatLng(point.lat, point.lng); CreateImportedMarker(pointlatlon, i == 0); i++; } if (i > 0) { try { if (_routeBuilder != null && _routeBuilder.Status == TaskStatus.Running) { return; } _cts = new CancellationTokenSource(); _routeBuilder = Task.Run(() => BuildTheRouteTask(Token), Token); } catch (Exception) { //ignore } } ImportExportRouteText.Clear(); var startMarker = decodedPoints.FirstOrDefault(); if (startMarker != null) { RouteCreatorMap.Position = new PointLatLng(startMarker.lat, startMarker.lng); } RouteCreatorMap.ZoomAndCenterMarkers(null); }
private void MapSearchBox_KeyDown(object sender, KeyEventArgs e) { var tb = sender as TextBox; if (tb == null) { return; } if (e.Key != Key.Enter) { return; } var searchText = tb.Text; if (!string.IsNullOrEmpty(searchText)) { RouteCreatorMap.SetPositionByKeywords(searchText); } }