Announcement: All noncommercial projects registered to use Earth Engine before
April 15, 2025 must
verify noncommercial eligibility to maintain Earth Engine access.
ee.Geometry.MultiPolygon.dissolve
Stay organized with collections
Save and categorize content based on your preferences.
Returns the union of the geometry. This leaves single geometries untouched, and unions multi geometries.
Usage | Returns | MultiPolygon.dissolve(maxError, proj) | Geometry |
Argument | Type | Details | this: geometry | Geometry | The geometry to union. |
maxError | ErrorMargin, default: null | The maximum amount of error tolerated when performing any necessary reprojection. |
proj | Projection, default: null | If specified, the union will be performed in this projection. Otherwise it will be performed in a spherical coordinate system. |
Examples
Code Editor (JavaScript)
// Define a MultiPolygon object.
var multiPolygon = ee.Geometry.MultiPolygon(
[[[[-122.092, 37.424],
[-122.086, 37.418],
[-122.079, 37.425],
[-122.085, 37.423]]],
[[[-122.081, 37.417],
[-122.086, 37.421],
[-122.089, 37.416]]]]);
// Apply the dissolve method to the MultiPolygon object.
var multiPolygonDissolve = multiPolygon.dissolve({'maxError': 1});
// Print the result to the console.
print('multiPolygon.dissolve(...) =', multiPolygonDissolve);
// Display relevant geometries on the map.
Map.setCenter(-122.085, 37.422, 15);
Map.addLayer(multiPolygon,
{'color': 'black'},
'Geometry [black]: multiPolygon');
Map.addLayer(multiPolygonDissolve,
{'color': 'red'},
'Result [red]: multiPolygon.dissolve');
Python setup
See the
Python Environment page for information on the Python API and using
geemap
for interactive development.
import ee
import geemap.core as geemap
Colab (Python)
# Define a MultiPolygon object.
multipolygon = ee.Geometry.MultiPolygon([
[[
[-122.092, 37.424],
[-122.086, 37.418],
[-122.079, 37.425],
[-122.085, 37.423],
]],
[[[-122.081, 37.417], [-122.086, 37.421], [-122.089, 37.416]]],
])
# Apply the dissolve method to the MultiPolygon object.
multipolygon_dissolve = multipolygon.dissolve(maxError=1)
# Print the result.
display('multipolygon.dissolve(...) =', multipolygon_dissolve)
# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(
multipolygon, {'color': 'black'}, 'Geometry [black]: multipolygon'
)
m.add_layer(
multipolygon_dissolve,
{'color': 'red'},
'Result [red]: multipolygon.dissolve',
)
m
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-10-06 UTC.
[null,null,["Last updated 2023-10-06 UTC."],[[["\u003cp\u003eThe \u003ccode\u003edissolve()\u003c/code\u003e method returns the union of the geometries within a MultiPolygon, effectively merging them into a single, unified geometry.\u003c/p\u003e\n"],["\u003cp\u003eIt accepts optional parameters like \u003ccode\u003emaxError\u003c/code\u003e to control the tolerance for reprojection errors and \u003ccode\u003eproj\u003c/code\u003e to specify the projection for the union operation.\u003c/p\u003e\n"],["\u003cp\u003eSingle geometries remain unaffected by this operation as they are already in their simplest form.\u003c/p\u003e\n"],["\u003cp\u003eThis function is valuable for simplifying complex MultiPolygons by dissolving internal boundaries and creating a contiguous shape.\u003c/p\u003e\n"],["\u003cp\u003eExamples in JavaScript and Python demonstrate the usage of the \u003ccode\u003edissolve()\u003c/code\u003e method and its impact on a sample MultiPolygon.\u003c/p\u003e\n"]]],["The `dissolve` method unions geometries, leaving single geometries unchanged and operating on multi-geometries. It accepts `maxError` to control reprojection tolerance and an optional `proj` for the target projection. The method is illustrated through examples in JavaScript and Python, defining a `MultiPolygon` and using `dissolve` with a set error. The result, a unified geometry, is then printed and visualized on a map alongside the original `MultiPolygon`.\n"],null,["# ee.Geometry.MultiPolygon.dissolve\n\nReturns the union of the geometry. This leaves single geometries untouched, and unions multi geometries.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|--------------------------------------------------|----------|\n| MultiPolygon.dissolve`(`*maxError* `, `*proj*`)` | Geometry |\n\n| Argument | Type | Details |\n|------------------|----------------------------|--------------------------------------------------------------------------------------------------------------------------------|\n| this: `geometry` | Geometry | The geometry to union. |\n| `maxError` | ErrorMargin, default: null | The maximum amount of error tolerated when performing any necessary reprojection. |\n| `proj` | Projection, default: null | If specified, the union will be performed in this projection. Otherwise it will be performed in a spherical coordinate system. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// Define a MultiPolygon object.\nvar multiPolygon = ee.Geometry.MultiPolygon(\n [[[[-122.092, 37.424],\n [-122.086, 37.418],\n [-122.079, 37.425],\n [-122.085, 37.423]]],\n [[[-122.081, 37.417],\n [-122.086, 37.421],\n [-122.089, 37.416]]]]);\n\n// Apply the dissolve method to the MultiPolygon object.\nvar multiPolygonDissolve = multiPolygon.dissolve({'maxError': 1});\n\n// Print the result to the console.\nprint('multiPolygon.dissolve(...) =', multiPolygonDissolve);\n\n// Display relevant geometries on the map.\nMap.setCenter(-122.085, 37.422, 15);\nMap.addLayer(multiPolygon,\n {'color': 'black'},\n 'Geometry [black]: multiPolygon');\nMap.addLayer(multiPolygonDissolve,\n {'color': 'red'},\n 'Result [red]: multiPolygon.dissolve');\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\n### Colab (Python)\n\n```python\n# Define a MultiPolygon object.\nmultipolygon = ee.Geometry.MultiPolygon([\n [[\n [-122.092, 37.424],\n [-122.086, 37.418],\n [-122.079, 37.425],\n [-122.085, 37.423],\n ]],\n [[[-122.081, 37.417], [-122.086, 37.421], [-122.089, 37.416]]],\n])\n\n# Apply the dissolve method to the MultiPolygon object.\nmultipolygon_dissolve = multipolygon.dissolve(maxError=1)\n\n# Print the result.\ndisplay('multipolygon.dissolve(...) =', multipolygon_dissolve)\n\n# Display relevant geometries on the map.\nm = geemap.Map()\nm.set_center(-122.085, 37.422, 15)\nm.add_layer(\n multipolygon, {'color': 'black'}, 'Geometry [black]: multipolygon'\n)\nm.add_layer(\n multipolygon_dissolve,\n {'color': 'red'},\n 'Result [red]: multipolygon.dissolve',\n)\nm\n```"]]