//Get the min/max values for the selected polyline and populate the dockpane with those values private void OnSelectionChanged(MapSelectionChangedEventArgs args) { //new instance for active map and feature layer var Mmap = MapView.Active.Map; FeatureLayer Mfeaturelayer = Mmap.GetLayersAsFlattenedList().OfType <FeatureLayer>().FirstOrDefault(l => l.ShapeType == ArcGIS.Core.CIM.esriGeometryType.esriGeometryPolyline); QueuedTask.Run(() => { //logic to check if only one feature is selected if (Mfeaturelayer.GetSelection().GetCount() < 1 || Mfeaturelayer.GetSelection().GetCount() > 1) { FromMeasure = null; ToMeasure = null; return; } double minM, maxM; long SelectedOIDs = Mfeaturelayer.GetSelection().GetObjectIDs().FirstOrDefault(); //Use inspector to get the shape var MinMaxInspector = new Inspector(); MinMaxInspector.Load(Mfeaturelayer, SelectedOIDs); var MinMaxShape = MinMaxInspector["SHAPE"] as Polyline; //Main function for getting min max m values GeometryEngine.Instance.GetMinMaxM(MinMaxShape, out minM, out maxM); //set mvalue outputs to text boxes FromMeasure = Convert.ToString(minM); ToMeasure = Convert.ToString(maxM); }); }
protected override Task OnSelectionChangedAsync(MapSelectionChangedEventArgs e) { // NOTE: This method is not called when the selection is cleared by another command (e.g. by 'Clear Selection') // Is there another way to get the global selection changed event? What if we need the selection changed in a button? //if (_shiftIsPressed) // always false -> toolkeyup is first. This method is apparently scheduled to run after key up //{ // return Task.FromResult(true); //} CancelableProgressor progressor = GetOverlapsCalculationProgressor(); if (IsInSelectionPhase()) { var selectedFeatures = MapUtils.GetFeatures(e.Selection).ToList(); if (CanUseSelection(selectedFeatures)) { AfterSelection(selectedFeatures, progressor); var sketch = GetCurrentSketchAsync().Result; SelectAndProcessDerivedGeometry(e.Selection, sketch, progressor); } } return(Task.FromResult(true)); }
void mapControl_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { var dataItem = e.Selection.FirstOrDefault() as Opportunities.MapItem; if(dataItem != null) { Callout.Location = dataItem.Address.ToGeoPoint(); var total = CollectionViewModel.GetOpportunity(ViewModel.Stage, dataItem.Address.City); Callout.Text = string.Format("TOTAL<br><color=206,113,0><b><size=+4>{0:c}</color></size></b><br>{1}", total, dataItem.Address.City); } }
private void mapControl1_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { if (e.Selection.Count == 0) { districtNumber = -1; } ResumeGu(); }
private void OnSelectionChanged(MapSelectionChangedEventArgs args) { if (args.Map != _activeMap) { return; } UpdateForActiveMap(false, args.Selection); }
/// <summary> /// Event handler when the selected features changes /// </summary> /// <param name="obj"></param> private void OnMapSelectionChangedEvent(MapSelectionChangedEventArgs obj) { //Clear the list first if (FeatureItems?.Count > 0) { FeatureItems.Clear(); } UpdateSymbolList(); }
private void OnMapSelectionChanged(MapSelectionChangedEventArgs obj) { if (MapView.Active == null) { return; } SelectedItems = obj.Selection; }
protected override bool OnMapSelectionChangedCore(MapSelectionChangedEventArgs args) { if (args.Selection.Count == 0) { ResetDerivedGeometries(); StartSelectionPhase(); } return(true); }
private void OnSelectionChanged(MapSelectionChangedEventArgs obj) { if (obj.Map != MapView.Active.Map) { return; } _cachedValue = false; _cachedValue = CheckSelection(obj.Selection); }
/// <summary> /// Called when the selection o /// </summary> /// <param name="args"></param> private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { if (SelectedFeatureLayer == null) { return; } GetSelectedFeatures(SelectedFeatureLayer); ComputePieChart(); Zoom2Select(); }
/// <summary> /// Called when the selection o /// </summary> /// <param name="args"></param> private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { System.Diagnostics.Debug.WriteLine("OnMapSelectionChanged"); if (SelectedFeatureLayer == null) { return; } GetSelectedFeatures(SelectedFeatureLayer); Zoom2Select(); }
/// <summary> /// Called when the selection o /// </summary> /// <param name="args"></param> private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { System.Diagnostics.Debug.WriteLine("OnMapSelectionChanged"); if (SelectedFeatureLayer == null) { return; } // TODO: Step5: Step into these functions to see how they work GetSelectedFeatures(SelectedFeatureLayer); Zoom2Select(); }
void mapControl_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { var dataItem = e.Selection.FirstOrDefault() as QuoteMapItem; if (dataItem != null) { Callout.Location = dataItem.Address.ToGeoPoint(); var total = CollectionViewModel.GetOpportunity(ViewModel.Stage, dataItem.Address.City); Callout.Text = string.Format("TOTAL<br><color=206,113,0><b><size=+4>{0:c}</color></size></b><br>{1}", total, dataItem.Address.City); } }
private void UiMapaTrackingMapaYFoto_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { var objetoSeleccionado = e.Selection.FirstOrDefault(); LimpiarMapa(); if (objetoSeleccionado == null) return; var type = objetoSeleccionado.GetType(); if (type != typeof(TareaDeCumplimientoDeEntrega)) return; var task = (TareaDeCumplimientoDeEntrega)objetoSeleccionado; MostrarInformacionDeLaTareaMapa(task); }
private void OnSelectionChangedAsync(MapSelectionChangedEventArgs obj) { if (obj.Map != MapView.Active.Map) { return; } if (_mapOverlay != null) { _mapOverlay.Dispose(); } SetState(obj.Selection); }
private void OnSelectionChanged(MapSelectionChangedEventArgs obj) { if (obj.Map != MapView.Active.Map) { return; } //Run on MCT _ = QueuedTask.Run(() => { _polyLineFeatureSelected = CheckSelectionAsync(obj.Selection); }); }
void MapControl_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { Sales.MapItem salesItem = ItemsLayer.SelectedItem as Sales.MapItem; if (salesItem == null) { return; } if (updateChartActionCore != null) { updateChartActionCore(salesItem); } }
void mapControl1_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { IList<object> selection = e.Selection; if(selection == null || selection.Count != 1) return; CityWeather cityWeatherInfo = selection[0] as CityWeather; this.actualWeatherInfo = cityWeatherInfo; if(cityWeatherInfo != null) { if(cityWeatherInfo.Forecast == null) { OpenWeatherMapService.GetForecastForCityAsync(cityWeatherInfo); cityWeatherInfo.ForecastUpdated += cityWeatherInfo_ForecastUpdated; } else cityWeatherInfo_ForecastUpdated(cityWeatherInfo, null); } }
private void Map_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { var selectedStation = e.Selection.Count > 0 ? e.Selection[0] as MapCallout : null; if (selectedStation == null) { UpdateSeries(null); } else { UpdateSeries(selectedStation.Text); } }
//Event handler when the MapSelection event is triggered. private void OnMapSelectionChangedEvent(MapSelectionChangedEventArgs obj) { if (MapView.Active == null) { return; } QueuedTask.Run(() => { // Check to see if there is a selected feature layer var featLayer = MapView.Active.Map.GetLayersAsFlattenedList().FirstOrDefault(l => l.Name == SelectedFeatureLayer) as FeatureLayer; if (featLayer == null) { return; } // Get the selected records, and check/exit if there are none: var featSelectionOIDs = featLayer.GetSelection().GetObjectIDs(); if (featSelectionOIDs.Count == 0 || featSelectionOIDs.Count > 1) { return; } using (var rowCursor = featLayer.GetSelection().Search(null)) { rowCursor.MoveNext(); var anyRow = rowCursor.Current; _dataNaipf2019.TxtTbType1 = anyRow["type_couv1"].ToString(); _dataNaipf2019.TxtTbType2 = anyRow["type_couv2"].ToString(); _dataNaipf2019.TxtTbPart = anyRow["part_str"].ToString(); _dataNaipf2019.TxtTbDens1 = anyRow["et1_dens"].ToString(); _dataNaipf2019.TxtTbDens2 = anyRow["et2_dens"].ToString(); _dataNaipf2019.TxtTbHaut1 = anyRow["et1_haut"].ToString(); _dataNaipf2019.TxtTbHaut2 = anyRow["et2_haut"].ToString(); _dataNaipf2019.TxtTbCouvGaule = anyRow["couv_gaule"].ToString(); _dataNaipf2019.TxtTbEtDomi = anyRow["et_domi"].ToString(); _dataNaipf2019.TxtTbOrigine = anyRow["origine"].ToString(); _dataNaipf2019.TxtTbAnnOrg = anyRow["an_origine"].ToString(); _dataNaipf2019.TxtTbRebEss1 = anyRow["reb_ess1"].ToString(); _dataNaipf2019.TxtTbRebEss2 = anyRow["reb_ess2"].ToString(); _dataNaipf2019.TxtTbRebEss3 = anyRow["reb_ess3"].ToString(); _dataNaipf2019.TxtTbEtage = anyRow["etagement"].ToString(); _dataNaipf2019.TxtTbAge1 = anyRow["et1_age"].ToString(); _dataNaipf2019.TxtTbAge2 = anyRow["et2_age"].ToString(); _dataNaipf2019.TxtTbPertMoy = anyRow["perturb"].ToString(); _dataNaipf2019.TxtTbAnnPertMoy = anyRow["an_perturb"].ToString(); _dataNaipf2019.TxtTbCdeTerr = anyRow["co_ter"].ToString(); } }); }
private void OnMapSelectionChangedEvent(MapSelectionChangedEventArgs obj) { var selection = obj.Selection; var keyValuePairs = selection.Where(kvp => (kvp.Key is BasicFeatureLayer) && (kvp.Key as BasicFeatureLayer).ShapeType == esriGeometryType.esriGeometryPolygon); if (keyValuePairs.Count() > 0) { FrameworkApplication.State.Activate("planet_state_ispolyselected"); } else { FrameworkApplication.State.Deactivate("planet_state_ispolyselected"); } }
private void UsuarioSeleccionoPing(object sender, MapSelectionChangedEventArgs e) { var objetoSeleccionado = e.Selection.FirstOrDefault(); LimpiarMapa(); if (objetoSeleccionado == null) { DoubleClikMapaTraking = false; return; } var type = objetoSeleccionado.GetType(); if (type != typeof(TareaDeCumplimientoDeEntrega)) return; var task = (TareaDeCumplimientoDeEntrega)objetoSeleccionado; MostrarInformacionDeLaTarea(task); }
/// <summary> /// Called after the feature selection changed /// </summary> /// <param name="args"></param> private async void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { if (SelectedFeatureLayer == null) { return; } await GetSelectedFeaturesAsync(SelectedFeatureLayer); NotifyPropertyChanged(() => SelectedFeatureDataTable); await ComputePieChartAsync(); NotifyPropertyChanged(() => ChartResult); Zoom2Selection(); }
protected override bool OnMapSelectionChangedCore(MapSelectionChangedEventArgs args) { if (ActiveMapView == null) { return(false); } // TODO: only if selection was cleared? Generally allow changing the selection through attribute selection? IList <Feature> selection = SelectionUtils.GetSelectedFeatures(ActiveMapView).ToList(); if (!CanUseSelection(selection)) { //LogPromptForSelection(); StartSelectionPhase(); } return(true); }
protected override Task OnSelectionChangedAsync(MapSelectionChangedEventArgs e) { // NOTE: This method is not called when the selection is cleared by another command (e.g. by 'Clear Selection') // Is there another way to get the global selection changed event? What if we need the selection changed in a button? if (_intermittentSelectionPhase ) // always false -> toolkeyup is first. This method is apparently scheduled to run after key up { return(Task.FromResult(true)); } if (CanUseSelection(e.Selection)) { StartSketchPhase(); } return(Task.FromResult(true)); }
private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { var selection = args.Selection; if (selection.Count() == 0) { FeatureSelected = false; CanUpload = false; } else { FeatureSelected = true; if (NodeSelected) { CanUpload = true; } } }
protected override bool OnMapSelectionChangedCore(MapSelectionChangedEventArgs args) { _msg.VerboseDebug("OnMapSelectionChangedCore"); if (ActiveMapView == null) { return(false); } // TODO: only if selection was cleared? Generally allow changing the selection through attribute selection? if (!CanUseSelection(ActiveMapView)) { //LogPromptForSelection(); StartSelectionPhase(); } return(true); }
private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { _msg.VerboseDebug("OnToolActivateAsync"); try { QueuedTaskUtils.Run( delegate { // Used to clear derived geometries etc. bool result = OnMapSelectionChangedCore(args); return(result); }); } catch (Exception e) { HandleError($"Error OnSelectionChanged: {e.Message}", e, true); } }
void mapControl1_SelectionChanged(object sender, MapSelectionChangedEventArgs e) { IList <object> selection = e.Selection; if (selection == null || selection.Count != 1) { return; } CityWeather cityWeatherInfo = selection[0] as CityWeather; this.actualWeatherInfo = cityWeatherInfo; if (cityWeatherInfo != null) { if (cityWeatherInfo.Forecast == null) { OpenWeatherMapService.GetForecastForCityAsync(cityWeatherInfo); cityWeatherInfo.ForecastUpdated += cityWeatherInfo_ForecastUpdated; } else { cityWeatherInfo_ForecastUpdated(cityWeatherInfo, null); } } }
private async void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { bool contains = false; foreach (var selection in args.Selection) { MapMember mapMember = selection.Key; FeatureLayer layer = mapMember as FeatureLayer; if (layer == Layer) { _selection = selection.Value; contains = true; await GenerateGmlAsync(); if (IsVisibleInGlobespotter) { if (_vectorLayerList.EditTool != EditTools.SketchPointTool) { Measurements = await ReloadSelectionAsync(); } else { _updateMeasurements = true; } } } } if ((!contains) && (_selection != null)) { Measurements = null; _selection = null; await GenerateGmlAsync(); } }
private async void OnSelectionChanged(MapSelectionChangedEventArgs obj) { if (MapView.Active.Map != null && obj.Selection.Count == 1) { var fl = obj.Selection.FirstOrDefault().Key as FeatureLayer; if (fl == null || fl.SelectionCount != 1 || fl.ShapeType != esriGeometryType.esriGeometryPoint) return; var pointd = await QueuedTask.Run(() => { try { var SelectedOID = fl.GetSelection().GetObjectIDs().FirstOrDefault(); if (SelectedOID < 0) return string.Empty; var SelectedLayer = fl as BasicFeatureLayer; var oidField = SelectedLayer.GetTable().GetDefinition().GetObjectIDField(); var qf = new ArcGIS.Core.Data.QueryFilter() { WhereClause = string.Format("{0} = {1}", oidField, SelectedOID) }; var cursor = SelectedLayer.Search(qf); Row row = null; if (cursor.MoveNext()) row = cursor.Current; if (row == null) return string.Empty; var fields = row.GetFields(); lock (_lock) { foreach (ArcGIS.Core.Data.Field field in fields) { if (field.FieldType == FieldType.Geometry) { // have mappoint here var val = row[field.Name]; if (val is MapPoint) { var temp = val as MapPoint; // project to WGS1984 proCoordGetter.Point = temp; proCoordGetter.Project(4326); return string.Format("{0:0.0####} {1:0.0####}", proCoordGetter.Point.Y, proCoordGetter.Point.X); } break; } } } } catch (Exception ex) { } return string.Empty; }); if (!string.IsNullOrWhiteSpace(pointd)) { InputCoordinate = pointd; } } }
private async void OnSelectionChanged(MapSelectionChangedEventArgs obj) { if (obj.Map != MapView.Active.Map) return; _cachedValue = false; _cachedValue = await CheckSelectionAsync(obj.Selection); }
private async void OnSelectionChanged(MapSelectionChangedEventArgs obj) { if (MapView.Active.Map != null && obj.Selection.Count == 1) { var fl = obj.Selection.FirstOrDefault().Key as FeatureLayer; if (fl == null || fl.SelectionCount != 1 || fl.ShapeType != esriGeometryType.esriGeometryPoint) { return; } var pointd = await QueuedTask.Run(() => { try { var SelectedOID = fl.GetSelection().GetObjectIDs().FirstOrDefault(); if (SelectedOID < 0) { return(string.Empty); } var SelectedLayer = fl as BasicFeatureLayer; var oidField = SelectedLayer.GetTable().GetDefinition().GetObjectIDField(); var qf = new ArcGIS.Core.Data.QueryFilter() { WhereClause = string.Format("{0} = {1}", oidField, SelectedOID) }; var cursor = SelectedLayer.Search(qf); Row row = null; if (cursor.MoveNext()) { row = cursor.Current; } if (row == null) { return(string.Empty); } var fields = row.GetFields(); lock (_lock) { foreach (ArcGIS.Core.Data.Field field in fields) { if (field.FieldType == FieldType.Geometry) { // have mappoint here var val = row[field.Name]; if (val is MapPoint) { var temp = val as MapPoint; // project to WGS1984 proCoordGetter.Point = temp; proCoordGetter.Project(4326); return(string.Format("{0:0.0####} {1:0.0####}", proCoordGetter.Point.Y, proCoordGetter.Point.X)); } break; } } } } catch (Exception ex) { } return(string.Empty); }); if (!string.IsNullOrWhiteSpace(pointd)) { InputCoordinate = pointd; } } }
protected override Task OnSelectionChangedAsync(MapSelectionChangedEventArgs e) { return(base.OnSelectionChangedAsync(e)); }
/// <summary> /// Called when the selection o /// </summary> /// <param name="args"></param> private void OnMapSelectionChanged(MapSelectionChangedEventArgs args) { if (SelectedFeatureLayer == null) return; GetSelectedFeatures(SelectedFeatureLayer); ComputePieChart(); Zoom2Select(); }
private void OnSelectionChanged(MapSelectionChangedEventArgs args) { if (args.Map != _activeMap) return; UpdateForActiveMap(false, args.Selection); }