POST
|
I have a map which has a GraphicsOverlay with various points. I have given the user the ability to select a subset of the points by drawing a polygon using the SketchEditor. How can I determine which points have been selected? Here is a subset of the code to set up the map: var symbolLow = new SimpleMarkerSymbol(SimpleMarkerSymbolStyle.Circle, Colors.Green, 10d);
private GraphicsOverlay graphicsOverlayLow = new GraphicsOverlay()
{ Renderer = new SimpleRenderer(symbolLow) };
foreach (var graphic in graphicListLow) // graphicListLow is a List of Points
graphicsOverlayLow.Graphics.Add(graphic);
MyMapView.GraphicsOverlays = new GraphicsOverlayCollection();
MyMapView.GraphicsOverlays.Add(graphicsOverlayLow);
// Graphics overlay to host sketch graphics
private GraphicsOverlay _sketchOverlay = new GraphicsOverlay();
MyMapView.GraphicsOverlays.Add(_sketchOverlay); I have two buttons, one for starting the drawing of the polygon and one to click when done (this follows the esri example for the SketchEditor). The code for starting is as follows: private async void SelectButton_Click(object sender, RoutedEventArgs e)
{
try
{
// Let the user draw on the map view using the chosen sketch mode
SketchCreationMode creationMode = SketchCreationMode.Polygon;
Esri.ArcGISRuntime.Geometry.Geometry geometry = await MyMapView.SketchEditor.StartAsync(creationMode, true);
// Create and add a graphic from the geometry the user drew
Graphic graphic = CreateGraphic(geometry);
_sketchOverlay.Graphics.Add(graphic);
}
catch (TaskCanceledException)
{
// Ignore ... let the user cancel drawing
}
catch (Exception ex)
{
// Report exceptions
MessageBox.Show("Error drawing graphic shape: " + ex.Message);
}
}
private Graphic CreateGraphic(Esri.ArcGISRuntime.Geometry.Geometry geometry)
{
// Create a graphic to display the specified geometry
Symbol symbol = null;
switch (geometry.GeometryType)
{
// Symbolize with a fill symbol
case GeometryType.Envelope:
case GeometryType.Polygon:
{
symbol = new SimpleFillSymbol()
{
Color = Colors.Red,
Style = SimpleFillSymbolStyle.Solid,
};
break;
} Here is the handler for the routine that is called when the user clicks the button signaling that they are done drawing the polygon. This is where I want to determine which points have been selected. private void CompleteButton_Click(object sender, RoutedEventArgs e)
{
// Cancel execution of the sketch task if it is already active
if (MyMapView.SketchEditor.CancelCommand.CanExecute(null))
{
MyMapView.SketchEditor.CancelCommand.Execute(null);
}
} Note that I am using the 100.4 SDK for WPF.
... View more
01-22-2019
04:53 PM
|
0
|
1
|
762
|
POST
|
Are there any examples of performing a spatial query using the 100.1 runtime? I could not find any.
... View more
10-12-2017
11:03 AM
|
0
|
1
|
730
|
POST
|
The "Sketch graphics on the map" example changes the DataContext to the SketchEditor. I don't want to change the DataContext as controls on my window rely on a different DataContext. How can I get around this? Sketch graphics on the map—ArcGIS Runtime SDK for .NET Samples | ArcGIS for Developers
... View more
10-09-2017
06:37 PM
|
0
|
1
|
511
|
POST
|
What is the best way to select a group of points on a map? I would like to use the mouse to draw a box around them similar to Microsoft Paint. Once selected the points would change to another color to show that they are selected. It seems that if I hold down the Ctrl+Shift keys, click the mouse and drag it I do get a box but then the map zooms out. My application is a .Net app using WPF. I am using the 100.1 version of Esri ArcGIS.
... View more
10-09-2017
11:03 AM
|
0
|
3
|
1019
|
POST
|
Thanks for the info. Here's the solution... MapPoint mapPointObjectToConvert = new MapPoint(longitude, latitude, SpatialReferences.Wgs84); MapPoint mapPoint = Esri.ArcGISRuntime.Geometry.GeometryEngine.Project(mapPointObjectToConvert, SpatialReferences.WebMercator) as MapPoint;
... View more
09-20-2017
10:43 AM
|
1
|
0
|
1014
|
POST
|
I'm using version 100.1.0.0 in a WPF application. How can I convert from latitude and longitude to WebMercator. Is there a routine already available?
... View more
09-19-2017
06:21 PM
|
0
|
2
|
1928
|
Title | Kudos | Posted |
---|---|---|
1 | 09-20-2017 10:43 AM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:25 AM
|