I am dealing with a .shp with a number of points in it. The distances between points range from ~300m to 5km.

I wish to create a 1 km buffer around each point with as little overlap as possible. Each buffer should have an ID. Where 1km buffers overlap with each other, I would like to give that buffer a different ID.

So lets say I have 50 points, and I create a 1 km buffer around every point. Owing to the short distances between my points in the Shapefile, overlapping between buffers are inevitable. Where there is overlap, I would like to give one of those buffers a particular ID. I would like to replicate this throughout my entire dataset until there are no buffers of the same ID overlapping.

I am sure this is possible in QGIS with a combination of the vector manipulation tools, I am just struggling on the best approach.

I am using QGIS 2.0.1 Dufour.

My problem is exhibited on the left image. The resolution is on the right image. Not how the ID of the buffer has changed to prevent overlapping of the same ID

  • Im not sure to understand what you are trying to achieve. Do you want to find the maximum buffer radius without overlapping? Commented Dec 19, 2013 at 14:08
  • No, each buffer MUST be at 1km. I want a 1 km buffer around each point in my shapefile. Where the buffers overlap, I would like to give them different IDs so that no buffer overlaps with another buffer of the same ID. Apologies, I have been recycling this in my head for some time so I may have failed to express myself clearly. I will knock up and upload some pictures that should hopefully better explain my problem!
    – Rob Lodge
    Commented Dec 19, 2013 at 14:11
  • 1
    Why dont you locate points that are closer than 1km, extract them from your dataset, and do buffer on those that left? Commented Dec 19, 2013 at 14:13
  • If I do that then I will have the same problem with my extracted dataset. I will still have points within 1km of each other. I could extract one half of the points and create a buffer around the existing points, and then replicate this with my extracted dataset. This would work although I'm aiming to find something a little more streamlined!
    – Rob Lodge
    Commented Dec 19, 2013 at 14:33
  • 1
    You could create your buffers - and then create Voronoi (Theissen) polygons. If you clip each buffer polygon with its Voronoi polygon, you should get what you are looking for.
    – dklassen
    Commented Dec 20, 2013 at 0:17

1 Answer 1


I would Intersect the buffers, turning the overlap into polygons.
Apply a Spatial Join from the original Points to assign the original ID, clear the ID's that don't have a match.
Join the two layers on the ID to compare Area. The buffers that overlapped have buffer.area > intersect.area.

  • Intersect seems like the quickest way to me.
    – Dan C
    Commented Dec 19, 2013 at 16:29

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.