I have 2 shapefiles, a polygon and a point layer. I would like to perform an operation in which I extract the polygons that coincide or are closest to each point, and throw away the polygons which are far away from my points of interest. I tried doing an "Intersection" but it seems the Intersection tool in ArcGIS will not output polygons. Is there any other way to do this?
-
2Use the Spatial Join tool in the Analysis Toolbox in the Overlay toolset (resources.arcgis.com/en/help/main/10.2/index.html#//…) with the Polygons as the Target and the points as the Join layer. Use the Within a Distance option and the Keep All Target Features option unchecked set the radius to the distance you would accept as close enough to your points of interest. The output will be the polygons you want to keep and you could replace the original polygon layer or relate on the Target FID value and invert the relate selection to find the polygons to delete.– Richard FairhurstCommented Jul 18, 2015 at 23:11
1 Answer
Intersect will output polygons. However it will also only output the lowest order geometry input. Meaning if you give it points and lines, you get points. Lines and polygons, you get lines.
One option is to use the select by location tool. You can select all polygons that intersect your points. Then either export to a new file, or invert the selection and delete the other polygons.
Intersect will only get intersect though, not 'closest'. You could use another method such as 'within a distance'. All points inside a polygon have a distance of 0 so the polygon will be selected. Other methods are available to tweak your results. Note that the nearest method will only give you the single nearest polygon to any given point, so if you want all polys within a range you'll want to avoid that one.
-
Intersect by location worked for the purposes of what I need to do. Thanks. Commented Jul 18, 2015 at 23:16