# Create Buffers (GeoAnalytics Desktop)

## Summary

Creates buffers around input features to a specified distance.

## Usage

• The Method parameter determines how buffers are constructed. There are two basic methods for constructing buffers: Euclidean and geodesic.

• Euclidean buffers measure distance in a two-dimensional Cartesian plane in which straight-line, or Euclidean, distances are calculated between two points on a flat surface (the Cartesian plane). Euclidean buffers are the more common type of buffer and work well when analyzing distances around features in a projected coordinate system that are concentrated in a relatively small area (such as one UTM zone). Euclidean buffers are referred to as planar buffers.
• Geodesic buffers account for the actual shape of the earth (an ellipsoid, or more properly, a geoid). Distances are calculated between two points on a curved surface (the geoid) as opposed to two points on a flat surface (the Cartesian plane). You should always consider creating geodesic buffers in the following circumstances:
• Your input features are dispersed (they cover multiple UTM zones, large regions, or the entire globe).
• The spatial reference (map projection) of your input features distorts distances to preserve other properties such as area.

• Geodesic buffers may appear unusual on a flat map, but when displayed on a globe, these buffers will look correct.

• The Method parameter determines how buffers are created.

• The planar method automatically identifies the method to use based on the coordinate system of the input features.
• If the input features have a projected coordinate system, Euclidean buffers will be created.
• If the input features have a geographic coordinate system, geodesic buffers will be created.
• Geodesic is the default. The geodesic method creates a shape-preserving geodesic buffer regardless of the input coordinate system. The shape-preserving geodesic buffer densifies the input features before creating the output geodesic buffers. This creates buffers that more closely represent the shape of the input features. If you are concerned about the shape of your buffers and how closely their shape matches the original input features, this option is recommended, particularly when your input data is in a geographic coordinate system. In some cases, this may take more time than the geodesic buffer created using the planar option, but the result is a buffer that more accurately matches the shape of the input feature.

• When using the planar method, you can improve the accuracy of buffers created with projected inputs using a projection that minimizes distance distortion, such as an Equidistant Conic or Azimuthal Equidistant projection that is geographically appropriate for your input.

• When buffering polygon features, negative buffer distances can be used to create buffers inside the polygon features. Using a negative buffer distance will reduce the polygon's boundaries by the distance specified.

##### Note:

If the negative buffer distance is large enough to collapse the polygon to nothing, a null geometry will be generated. A warning message will appear, and no null geometry features will be written to the output dataset.

• The size of the buffer can be entered using one of the following three options:

• Distance—Uses a constant value (all buffers will be the same size)
• Field—Uses values from a field (different features can have buffers of different size)
• Expression—Applies an expression to each feature (different features can have different values based on expression)

• By default, the Create Buffers tool creates overlapping buffers when the buffer areas meet. When the input features are areas, the input area is included in the buffer. You can use the dissolve and multipart parameters to control how overlapping buffers are treated. The three available dissolve options are as follows:

• None—This is the default. Buffers will overlap where buffer areas meet.
• All—All of the features will be dissolved. The multipart parameter specifies whether all features will be dissolved into one feature (multipart is true) or only overlapping features will be dissolved (multipart is false).
• Fields—Features will be dissolved based on field values. You can select one or many fields, and like values will be dissolved together. The multipart parameter specifies whether all matching field features will be dissolved into one feature (multipart is true) or only overlapping matching field features will be dissolved (multipart is false).

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

• When you dissolve using All or Fields, you can calculate statistics. The statistics are only applied to the dissolving of all features or field values, they are not applied geographically (using the multipart parameter). How these options work using the six features shown in the following screen shot is described in the table below. The color denotes the field values (blue or orange) that are used for the field dissolve.

Dissolve optionMultipart is false (default)Multipart is true
None

Six features are created when no dissolve is applied to buffered features. This is the default. This is the same as the standard analysis tool's Overlap option.

Multipart cannot be true when the dissolve option is None.

All

Three features are created when all values are dissolved and multipart is false. Only overlapping features are dissolved. This is the same as the standard analysis tool's Dissolve option.

One feature is created when all values are dissolved and multipart is true. When you select this option, the result will always be one feature.

Fields

Four features are created when the dissolve is applied based on the field (here, the field is the color of input points). Only overlapping features with the same value of the specified fields are dissolved.

Two features are created when the dissolve is applied based on the field (here, the field is the color of input points) and multiparts are allowed. Features with the same field value will always be a single feature.

• You can use a buffer type of expression to create an equation from numeric fields and mathematical operators. See Arcade expressions in the GeoAnalytics Desktop toolbox for more information. It is assumed that numeric values in a buffer expression are in meters unless otherwise specified.

• Similar analysis can also be completed using the following:

• The ArcGIS Pro geoprocessing tool Buffer in the Analysis toolbox.
• The ArcGIS Pro geoprocessing tool Create Buffers in the Feature Analysis toolbox.

• The output dataset will include a BUFF_DIST field that contains the buffer distance used to buffer each feature in the linear unit of the input features' coordinate system. If an output coordinate system is set, the BUFF_DIST units will be in that coordinate system. If the field already exists in the output, a number will be appended to the end of the field name to make it unique (for example, BUFF_DIST1).

• You can improve performance of the Create Buffers tool by doing one or more of the following:

• Set the extent environment so that you only analyze data of interest.
• Use a planar buffer.
• Don't dissolve your buffer results.
• Use data that is local to where the analysis is being run.

• This geoprocessing tool is powered by Spark. Analysis is completed on your desktop machine using multiple cores in parallel. See Considerations for GeoAnalytics Desktop tools to learn more about running analysis.

• When running GeoAnalytics Desktop tools, the analysis is completed on your desktop machine. For optimal performance, data should be available on your desktop. If you are using a hosted feature layer, it is recommended that you use ArcGIS GeoAnalytics Server. If your data isn't local, it will take longer to run a tool. To use your ArcGIS GeoAnalytics Server to perform analysis, see GeoAnalytics Tools.

## Parameters

 Label Explanation Data Type Input Layer The point, polyline, or polygon features to be buffered. Feature Layer Output Feature Class A new feature class of buffered results. Feature Class Method Specifies the method that will be used to create the buffer. Geodesic— Buffers are created using a shape-preserving geodesic buffer method regardless of the input coordinate system. This is the default.Planar— If the input features are in a projected coordinate system, Euclidean buffers are created. If the input features are in a geographic coordinate system, geodesic buffers are created. The Output Coordinate System environment setting can be used to specify a coordinate system. String Buffer Type (Optional) Specifies how the buffer distance will be defined. Distance—Apply the same linear distance to all features.Field—Select a numeric or string field to represent the buffer distance.Expression—Build an equation using fields, constants, and mathematical operations to represent the buffer distance. String Buffer Field (Optional) The field that contains the buffer distance for each feature. If a field value is a number, it is assumed that the distance is in the linear unit of the Input Layer spatial reference, unless the Input Layer is 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. Field Buffer Distance (Optional) The distance around the input features that will be buffered. Distance can be expressed in meters, kilometers, feet, yards, miles, or nautical miles. Linear Unit Buffer Expression (Optional) An equation using fields and mathematical operators that will be applied as a buffer to each feature. Fields must be numeric, and the expression can include [+ - * / ] operators and multiple fields. Calculated values are applied in meters unless otherwise specified. For example, apply a buffer that multiples a numeric field named distance in kilometers by 2 and adds 15 meters.Use an Arcade expression such as as_kilometers(\$feature["distance"]) * 2 + as_meters(15).If the layer is added to the map, the Fields and Helpers filters can be used to build an expression. Calculator Expression Dissolve Option (Optional) Specifies the dissolve option that will be used to remove buffer overlap.None—An individual buffer for each feature will be maintained regardless of overlap. This is the default.All—All buffers will be dissolved together into a single feature, removing any overlap.List—Any buffers sharing attribute values in the listed fields (carried over from the input features) will be dissolved. String Dissolve Fields (Optional) A list of one or more fields from the input features on which output buffers will be dissolved. Any buffers sharing attribute values in the listed fields will be dissolved. This option is only required when Dissolve Option is List. Field Summary Fields (Optional) Specifies statistics that can be applied to numeric and string fields. If left empty, only count will be calculated. These statistics are only applied when Dissolve Option is List or All.Count—The number of nonnull values. It can be used on numeric fields or strings. The count of [null, 0, 2] is 2.Sum—The sum of numeric values in a field. The sum of [null, null, 3] is 3.Mean—The mean of numeric values. The mean of [0, 2, null] is 1.Min—The minimum value of a numeric field. The minimum of [0, 2, null] is 0.Max—The maximum value of a numeric field. The maximum value of [0, 2, null] is 2.Standard Deviation—The standard deviation of a numeric field. The standard deviation of  is null. The standard deviation of [null, 1,1,1] is null.Variance—The variance of a numeric field in a track. The variance of  is null. The variance of [null, 1, 1, 1] is null.Range—The range of a numeric field. This is calculated as the minimum value subtracted from the maximum value. The range of [0, null, 1] is 1. The range of [null, 4] is 0.Any—A sample string from a field of type string. Value Table Multipart (Optional) Specifies whether multipart features will be created.Checked—Output multipart features will be created where appropriate.Unchecked—Instead of creating multipart features, individual features will be created for each part. This is the default. Boolean

`arcpy.gapro.CreateBuffers(input_layer, out_feature_class, method, {buffer_type}, {buffer_field}, {buffer_distance}, {buffer_expression}, {dissolve_option}, {dissolve_fields}, {summary_fields}, {multipart})`
 Name Explanation Data Type input_layer The point, polyline, or polygon features to be buffered. Feature Layer out_feature_class A new feature class of buffered results. Feature Class method Specifies the method that will be used to create the buffer. GEODESIC— Buffers are created using a shape-preserving geodesic buffer method regardless of the input coordinate system. This is the default.PLANAR— If the input features are in a projected coordinate system, Euclidean buffers are created. If the input features are in a geographic coordinate system, geodesic buffers are created. The Output Coordinate System environment setting can be used to specify a coordinate system. String buffer_type(Optional) Specifies how the buffer distance will be defined. DISTANCE—Apply the same linear distance to all features.FIELD—Select a numeric or string field to represent the buffer distance.EXPRESSION—Build an equation using fields, constants, and mathematical operations to represent the buffer distance. String buffer_field(Optional) The field that contains the buffer distance for each feature. If a field value is a number, it is assumed that the distance is in the linear unit of the input_layer spatial reference, unless the input_layer is 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. Field buffer_distance(Optional) The distance around the input features that will be buffered. Distance can be expressed in meters, kilometers, feet, yards, miles, or nautical miles. Linear Unit buffer_expression(Optional) An equation using fields and mathematical operators that will be applied as a buffer to each feature. Fields must be numeric, and the expression can include [+ - * / ] operators and multiple fields. Calculated values are applied in meters unless otherwise specified. For example, apply a buffer that multiples a numeric field named distance in kilometers by 2 and adds 15 meters. Use an Arcade expression such as as_kilometers(\$feature["distance"]) * 2 + as_meters(15). Calculator Expression dissolve_option(Optional) Specifies the dissolve option that will be used to remove buffer overlap.NONE—An individual buffer for each feature will be maintained regardless of overlap. This is the default.ALL—All buffers will be dissolved together into a single feature, removing any overlap.LIST—Any buffers sharing attribute values in the listed fields (carried over from the input features) will be dissolved. String dissolve_fields[dissolve_fields,...](Optional) A list of one or more fields from the input features on which output buffers will be dissolved. Any buffers sharing attribute values in the listed fields will be dissolved. This option is only required when dissolve_option is LIST. Field summary_fields[summary_fields,...](Optional) Specifies statistics that can be applied to numeric and string fields. If left empty, only count will be calculated. These statistics are only applied when dissolve_option is LIST or ALL.COUNT—The number of nonnull values. It can be used on numeric fields or strings. The count of [null, 0, 2] is 2.SUM—The sum of numeric values in a field. The sum of [null, null, 3] is 3.MEAN—The mean of numeric values. The mean of [0,2, null] is 1.MIN—The minimum value of a numeric field. The minimum of [0, 2, null] is 0.MAX—The maximum value of a numeric field. The maximum value of [0, 2, null] is 2.STDDEV—The standard deviation of a numeric field. The standard deviation of  is null. The standard deviation of [null, 1,1,1] is null.VAR—The variance of a numeric field in a track. The variance of  is null. The variance of [null, 1,1,1] is null.RANGE—The range of a numeric field. This is calculated as the minimum value subtracted from the maximum value. The range of [0, null, 1] is 1. The range of [null, 4] is 0.ANY—A sample string from a field of type string. Value Table multipart(Optional) Specifies whether multipart features will be created.MULTI_PART—Output multipart features will be created where appropriate.SINGLE_PART—Instead of creating multipart features, individual features will be created for each part. This is the default. Boolean

### Code sample

CreateBuffers example (Python window)

The following Python window script demonstrates how to use the CreateBuffers tool.

``````#-------------------------------------------------------------------------------
# Name: CreateBuffers.py
# Description: Buffer damaged building by 300 meters

# Import system modules
import arcpy

arcpy.env.workspace = "C:/data/DamageSurvey.gdb"

# Set local variables
inFeatures = "DamageAssessment"
out = "DangerousAreas"

# Execute Create Buffers
arcpy.gapro.CreateBuffers(inFeatures, out, "GEODESIC", "DISTANCE",
None, "300 Meters", None, "ALL", None, None,
"SINGLE_PART")``````

• Basic: No
• Standard: No