Announcement: All noncommercial projects registered to use Earth Engine before April 15, 2025 must verify noncommercial eligibility to maintain Earth Engine access.
[[["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\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,["Returns 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\nCode 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\nColab (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```"]]