Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I've got a script that takes a single input polygon feature, throws 10 buffers around it at tenths of a specified input distance, and then symbolises the output based on an existing layer file. Pretty simple.

However, the arcpy.MultipleRingBuffer_analysis operation is amazingly slow. It takes upwards of two minutes to generate the buffers, even for very basic polygon inputs - the same result can be had in about two seconds by using the buffer wizard tool. Problem is, the buffer wizard can't be accessed through arcpy.

So obviously it's possible to quickly generate multiple ring buffers - does anyone have any insight as to how the buffer wizard tool is doing it, and how that might be replicated in Python?

share|improve this question
    
It would be an interesting exercise to compile a chart of actual numbers, but it takes a great deal of time to just invoke arcpy and grab license, even before getting to any real work. I've seen import arcpy take 10s of seconds on its own. –  matt wilkie Dec 19 '12 at 6:04
1  
Just a note of caution: I've found the Multiple Ring Buffer wizard to be buggy. I have had situations where it failed to generate the rings as specified. However, the error does not seem to be consistent. I only noticed this problem since version 10. Prior to that it behaved itself. –  MappaGnosis Dec 19 '12 at 9:43
    
@notaprogrammer Are you using ArcGIS 10.0 or 10.1? –  dmahr Dec 19 '12 at 14:44
    
10.1, if that helps. –  Nathaniel Dec 19 '12 at 22:42
    
@dmahr may be thinking along the lines of writing a Python Add-in for ArcMap which 10.1 opens up the opportunity for - I suspect that could be used to write a faster Multiple Ring Buffer for use in ArcMap but have not had chance to test it yet –  PolyGeo Dec 20 '12 at 0:47

1 Answer 1

Unfortunately, the Buffer wizard (and its options) are not exposed in ArcObjects or ArcPy.

I'm trying to think of ways around this. One cool thing about the Buffer wizard is that you can use an optimized coordinate system at either a selected feature set / entire dataset or feature level. If you're using the former (not the feature-optimized), and your data is using a geographic coordinate reference system, you might try projecting your data into a projected coordinate system, then running the Buffer Tool.

Note: I work for Esri.

share|improve this answer
1  
Hi @mkennedy - thanks for your comment. I don't know what an optimized coordinate system is, but I am using features that have been projected into a proj. coord. system. If you have any sway in this at ESRI, can you ask why the Buffer Wizard a) is so buried in tools so that only an exhaustive Google search eventually leads to an Esri blog post that reveals its existence? and b) why can't it just retain the other fields in the outputs from the input features like almost every other tool? –  SharonB Sep 9 '13 at 16:11

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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