3

I need to aggregate near-by polygons, but it has to work with a Basic ArcGIS Desktop Licence. I can't use the Aggregate tool (only Advanced) and I can't use the buffer tool, because the rounded edges create a lot of unnecessary points (flat edges are not available with a Basic License).

The accuracy is not very important (the less points created the better), it should look something like this:

enter image description here

0

2 Answers 2

3

This will work with basic license:

arcpy.Buffer_analysis("ORIGINAL", "/single_buffer.shp", .. dissolve_option="ALL")
arcpy.MultipartToSinglepart_management(in_features="single_buffer","..many_buffers.shp")
arcpy.CalculateField_management("many_buffers", "Id", "[FID]+1")
arcpy.SpatialJoin_analysis("ORIGINAL", "many_buffers")
arcpy.Dissolve_management("sj", "../RESULT.shp", dissolve_field="Id")
arcpy.CalculateField_management("RESULT", field="Shape", expression="!Shape!.convexHull()", expression_type="PYTHON_9.3", code_block="")

enter image description here

3
  • Thanks this is exactly what I was looking for (the last Calculate Field step)! Does this only work with shapefiles and not fc?
    – Kvo la
    Commented Jul 30, 2018 at 14:44
  • If you work with database, start editing session.
    – FelixIP
    Commented Jul 30, 2018 at 18:42
  • Editing session let's ArcGis recalculate area and perimeter.
    – FelixIP
    Commented Jul 30, 2018 at 18:56
2

You can buffer with dissolve type all then run Integrate to reduce the number of vertices:

Integrate is used to maintain the integrity of shared feature boundaries by making features coincident if they fall within the specified x,y tolerance. Features that fall within the specified x,y tolerance are considered identical or coincident.

Integrate should give you results comparable to Simplify Polygon (which requires higher license level).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.