I need to create multi-ring buffers for about 400 points that are quite close to each other. This has required me to set the output buffers to not dissolve in my code as below so that they overlap each other and do not combine with each other.

For each of the buffers, I have an associated set of polygons that fall within the buffers with matching ID's. I need to do a union them and remove the non-overlapping areas of this union.

The current MRB function in arc doesn't allow for the rings to be created if you don't select dissolve and when that happens the overlapping buffers are connected.

This is not ideal for my situation where I am trying to union one buffer to one matching set of polygons of similar ID's.

So, I am wondering if it's possible to create multi-ring buffers with rings even when the buffers overlap each other using arcpy

  • Having a simple picture illustrating what exactly you are trying to achieve wouldn't hurt! Commented Apr 25, 2018 at 18:04
  • I've read your question many times but I don't understand what exactly you need. 1. You have 400 points. You want to create multiring buffers. len(distance) is 30. That means you will have 30*400=12000 buffer polygons. Is that true? 2. I understand that you need those buffers as seperate rings/donuts. OK. What if buffers of a point intersect buffers of another points. 3. You say 'union', but the picture looks like the result of an 'intersect' process. Commented Apr 25, 2018 at 22:39
  • @KadirŞahbaz, I apologize that my question wasn't very clear but the output is the union but I have also removed the non-overlapping areas. I should have stated in my question (updated now). I intend on doing the union (and then removing the non-overlapping areas) on buffers and polygons that fall within it that have matching ID's so the buffers should not be intersecting each other in any way when they overlap. I hope that clears things up a little. Commented Apr 25, 2018 at 22:52
  • So, basically what I need is multi-ring buffers created from the 400 points that are rings/donuts that do not end up dissolved into the other surrounding point multi ring buffers. Something that I am unable to get now using the multi ring buffer function Commented Apr 25, 2018 at 23:00

1 Answer 1


In an attempt to replicate your problem I ran the multiple ring buffer tool on ~400 points with multiple buffer distances and the Dissolve Option set to 'NONE' and it appears to function as intended. The output is a single shapefile containing all the circular buffer polygons.

In order to get a donut-shaped buffer (not a circle), you will need to erase the center of the circular buffer which I believe is the actual question here as erase or clip will not work on the full batch of polygons. To do this you will need to iterate through each points respective buffers.

This can be done within model builder, with a python script, or painstakingly by hand. Try using search cursor to work through the table and select out the sets of polygons matching each point. erase the center buffer from the outer buffer. The outputs will be donut-shaped, you can merge your outputs back together at the end.

  • Thanks @GIS_is_magic. I actually managed to figure it out just a while ago by tweaking the code BERA came up with for this question. The search cursor method was what I was using initially and it was taking too long - >1 day for the ~400 points I have. However, if I created the MRB's first and then erased the overlaps to get the donuts, it cut the processing time down to a bit more than half of that. Commented Apr 30, 2018 at 23:49

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.