Announcement: All noncommercial projects registered to use Earth Engine before April 15, 2025 must verify noncommercial eligibility to maintain Earth Engine access.
Stay organized with collections
Save and categorize content based on your preferences.
Returns the input buffered by a given distance. If the distance is positive, the geometry is expanded, and if the distance is negative, the geometry is contracted.
Usage
Returns
MultiPoint.buffer(distance, maxError, proj)
Geometry
Argument
Type
Details
this: geometry
Geometry
The geometry being buffered.
distance
Float
The distance of the buffering, which may be negative. If no projection is specified, the unit is meters. Otherwise the unit is in the coordinate system of the projection.
maxError
ErrorMargin, default: null
The maximum amount of error tolerated when approximating the buffering circle and performing any necessary reprojection. If unspecified, defaults to 1% of the distance.
proj
Projection, default: null
If specified, the buffering will be performed in this projection and the distance will be interpreted as units of the coordinate system of this projection. Otherwise the distance is interpereted as meters and the buffering is performed in a spherical coordinate system.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-10-06 UTC."],[[["\u003cp\u003eExpands or contracts a MultiPoint geometry by a specified distance.\u003c/p\u003e\n"],["\u003cp\u003ePositive distance values expand the geometry, while negative values contract it.\u003c/p\u003e\n"],["\u003cp\u003eBuffering can be performed using meters or a projected coordinate system with its own units.\u003c/p\u003e\n"],["\u003cp\u003eAn optional error margin controls the accuracy of the buffering operation.\u003c/p\u003e\n"]]],["The `buffer` method modifies a geometry by expanding or contracting it based on a specified distance. A positive distance expands the geometry, while a negative distance contracts it. The method accepts a `distance` (in meters or projection units), an optional `maxError` for approximation tolerance, and an optional `proj` for specifying the projection. It operates on a `geometry` and returns a new `Geometry` object. Example code is provided in JavaScript and Python using the MultiPoint object to demonstrate the application.\n"],null,["Returns the input buffered by a given distance. If the distance is positive, the geometry is expanded, and if the distance is negative, the geometry is contracted.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|--------------------------------------------------------|----------|\n| MultiPoint.buffer`(distance, `*maxError* `, `*proj*`)` | Geometry |\n\n| Argument | Type | Details |\n|------------------|----------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `geometry` | Geometry | The geometry being buffered. |\n| `distance` | Float | The distance of the buffering, which may be negative. If no projection is specified, the unit is meters. Otherwise the unit is in the coordinate system of the projection. |\n| `maxError` | ErrorMargin, default: null | The maximum amount of error tolerated when approximating the buffering circle and performing any necessary reprojection. If unspecified, defaults to 1% of the distance. |\n| `proj` | Projection, default: null | If specified, the buffering will be performed in this projection and the distance will be interpreted as units of the coordinate system of this projection. Otherwise the distance is interpereted as meters and the buffering is performed in a spherical coordinate system. |\n\nExamples\n\nCode Editor (JavaScript) \n\n```javascript\n// Define a MultiPoint object.\nvar multiPoint = ee.Geometry.MultiPoint([[-122.082, 37.420], [-122.081, 37.426]]);\n\n// Apply the buffer method to the MultiPoint object.\nvar multiPointBuffer = multiPoint.buffer({'distance': 100});\n\n// Print the result to the console.\nprint('multiPoint.buffer(...) =', multiPointBuffer);\n\n// Display relevant geometries on the map.\nMap.setCenter(-122.085, 37.422, 15);\nMap.addLayer(multiPoint,\n {'color': 'black'},\n 'Geometry [black]: multiPoint');\nMap.addLayer(multiPointBuffer,\n {'color': 'red'},\n 'Result [red]: multiPoint.buffer');\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\nColab (Python) \n\n```python\n# Define a MultiPoint object.\nmultipoint = ee.Geometry.MultiPoint([[-122.082, 37.420], [-122.081, 37.426]])\n\n# Apply the buffer method to the MultiPoint object.\nmultipoint_buffer = multipoint.buffer(distance=100)\n\n# Print the result.\ndisplay('multipoint.buffer(...) =', multipoint_buffer)\n\n# Display relevant geometries on the map.\nm = geemap.Map()\nm.set_center(-122.085, 37.422, 15)\nm.add_layer(multipoint, {'color': 'black'}, 'Geometry [black]: multipoint')\nm.add_layer(\n multipoint_buffer, {'color': 'red'}, 'Result [red]: multipoint.buffer'\n)\nm\n```"]]