Yes, you can use it to Identify. It will easily get you result if you are identifing against polygons. whereas for line and points, you would have to make sure it intersects with the geometries. Ideally it is a better way to first buffer the points and then use the buffer geometry in the IdentifyTask.
Does that make sense.
Thanks. I have an additional question and I am using ArcGIS Runtime SDK for iOS.
I am using AGSPolygon for the geometry for the AGSIdentifyTask params AGSIdentifyParameters.
I am using ASGSGeoMetryEngine to get a large rectangle envelope around a GPSPoint. Is this the right way to do this?
AGSGeometryEngine * geometryEngine = [AGSGeometryEngine defaultGeometryEngine];
searchPolygon = [geometryEngine bufferGeometry:centerAGSPoint byDistance:100];
centerAGSPoint is my current center latitiude and longitude. How would you given a center point latitude and longitude get rectangle area for a visible UIView? from 0,0 to width,height?
I want to be able to search an area (AGSPolygon) and get all the resulting AGSGraphics. Right now I do this and I get only 1 GPSPoint when I know there are many.
Thanks for your help
I dont know about iOS. but In general when you do a buffer for point the output would be circle and not extent. also when using buffer you should also pass the unit.
if all you need is extent then you could simply create a new extent object and update the values with half of the buffer distance.
xmax = gpsPoint.x + 50
xmin = gpsPoint.x - 50
ymax = gpsPoint.y + 50
ymin = gpsPoint.y - 50
or if you want all graphic with in the visible extent then the map control should have extent property on it.
Thanks again. One more question and please bare with me as I am very new (this month) to ArcGIS. Really like it!
When you say create my own extent. How to I convert from one coordinate system to another. I have a UIView with a center of the user current location. Let's say the UIView (window) is 400 x 400 so center is current user location (lat/long). I want to search for any graphic in a specific rect say 400, 400 around the center lat/long for the user. How do I do this? If my window is not in the same coordinate system as the ArcGIS map?
you should find more information here Spatial references—ArcGIS Runtime SDK for iOS | ArcGIS for Developers
The UIView is usually in pixel values and the WebMap will be having geographic values. In your case, if you just want to use a single user location then just pass the mapPoint and increase the tolerance in IdentifyParameters to the pixel value in you case 400. That should work for you.
I tried a tolerance of 400 and I still only get one GPSPoint returned in the result even though I know there are more points as this is part of a raster. Is there a way to get the full raster that contains a GPSPoint?