1

I am trying to create a buffer in meters around some points using a field with the distance. However I cannot assign a distance type to use and by default I assume it's doing decimal degrees (I am ending up with 'squished' buffers). Is there any way to use meters when buffering by a field?

enter image description here

5
  • I just tried this using Buffer from the geoprocessor menu and a distance field in the point featureclass. The point layer was in WGS84 as was the map data frame. The buffer was still done in meters (even though the help said it would use the input features' spatial reference units) and so appeared squashed while the data frame was in WGS84. Switching the data frame projection to a projected coordinate system made them appear circular on screen. – Martin Wilkerson Jan 15 '15 at 16:18
  • I've measured them and it's not just appearance, they are definitely wider than they are tall – Alan Carr Jan 15 '15 at 16:20
  • 2
    What projection are your point feature class and data frame in? – Martin Wilkerson Jan 15 '15 at 16:22
  • Points are WGS 1984 and frame is GCS_WGS_1984. I'm not too up-to-speed with coordinate systems as 99% of the time I am dealing with BNG 27700 data – Alan Carr Jan 15 '15 at 16:25
  • At what latitude are you mapping? Geodesic buffers only seem "squashed" when they should seem squashed. – Vince Jan 15 '15 at 23:00
4

Yes, you can have your buffer in meters just by adding Meters in your field 'BUFFER' like 1000 Meters, 250 Meters.. and so on.

This is documented on ArcGIS resources - Buffer (Analysis)

Here is the snippet from site stating this capability.

  • If a field from the Input Features is used to obtain buffer distances, the field's values can be either a number (5) or a number with a valid linear unit (5 Kilometers). If a field value is simply a number, it is assumed that the distance is in the linear unit of the Input Features' spatial reference (unless the Input Features are in a geographic coordinate system, in which case, the value is assumed to be in meters). If the linear unit specified in the field values is invalid or not recognized, the linear unit of the input features' spatial reference will be used by default. Using a buffer field for buffer distances
6

Starting in ArcGIS 10.0, running the Buffer tool on a point or line feature class with a geographic coordinate system (e.g. WGS84, NAD83) results in geodesic buffers that are completely free of distortion. That is probably what happened here, except that your data frame's coordinate system is distorting the area. From the help page (emphasis mine):

You can completely avoid distortion when buffering points by using a feature class that has a geographic coordinate system and specifying a Buffer Distance in linear units (meters, feet, and so forth, as opposed to angular units such as degrees). When this combination of inputs is used—point or multipoint features in a geographic coordinate system buffered by linear units—the output will be true geodesic buffers. Geodesic buffers appear as ovals on any flat map and will only appear as perfect circles when displayed on a globe.

A few related notes:

  • To confirm that the buffers are circular, change your data frame's coordinate system to an appropriate UTM zone--the distortion should be reduced. You can also use the orthographic "The World from Space" coordinate system to simulate looking at a globe.

  • There's no checkbox in the buffer tool to toggle the geodesic buffering on and off--it depends solely on the type of coordinate system of the input data.

  • Starting with ArcGIS 10.1, this geodesic buffering also applies to polygons.

  • Note that although this reduction in distortion is a nice feature, it is also more performance intensive.

1
  • Nice answer. I'd say in a profession that depends on projections, this concept is often poorly understood. – phloem Jan 15 '15 at 16:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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