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.
Converts LineString, MultiLineString, and LinearRing geometries into a MultiLineString by cutting them into parts no longer than the given distance along their length. All other geometry types will be converted to an empty MultiLineString.
[[["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 2024-06-05 UTC."],[[["\u003cp\u003eThe \u003ccode\u003ecutLines\u003c/code\u003e method converts LineString, MultiLineString, and LinearRing geometries into a MultiLineString by segmenting them into shorter lengths.\u003c/p\u003e\n"],["\u003cp\u003eSegmentation is based on specified distances provided as a list to the \u003ccode\u003edistances\u003c/code\u003e parameter.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003emaxError\u003c/code\u003e parameter controls the tolerance for reprojection errors, while \u003ccode\u003eproj\u003c/code\u003e defines the projection for distance measurements and results.\u003c/p\u003e\n"],["\u003cp\u003eAll geometry types other than LineString, MultiLineString, and LinearRing are converted to an empty MultiLineString when \u003ccode\u003ecutLines\u003c/code\u003e is applied.\u003c/p\u003e\n"]]],["The `cutLines` method converts LineString, MultiLineString, and LinearRing geometries into a MultiLineString by dividing them into segments based on specified distances. It takes a list of `distances` to define cut points, measured in units of the given `proj` or meters by default. It has a `maxError` parameter that sets a tolerance for reprojection error. Other geometry types will return an empty MultiLineString. The outputs are shown with JavaScript and Python code.\n"],null,["Converts LineString, MultiLineString, and LinearRing geometries into a MultiLineString by cutting them into parts no longer than the given distance along their length. All other geometry types will be converted to an empty MultiLineString.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|----------------------------------------------------------------|----------|\n| MultiLineString.cutLines`(distances, `*maxError* `, `*proj*`)` | Geometry |\n\n| Argument | Type | Details |\n|------------------|----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `geometry` | Geometry | Cuts the lines of this geometry. |\n| `distances` | List | Distances along each LineString to cut the line into separate pieces, measured in units of the given proj, or meters if proj is unspecified. |\n| `maxError` | ErrorMargin, default: null | The maximum amount of error tolerated when performing any necessary reprojection. |\n| `proj` | Projection, default: null | Projection of the result and distance measurements, or EPSG:4326 if unspecified. |\n\nExamples\n\nCode Editor (JavaScript) \n\n```javascript\n// Define a MultiLineString object.\nvar multiLineString = ee.Geometry.MultiLineString(\n [[[-122.088, 37.418], [-122.086, 37.422], [-122.082, 37.418]],\n [[-122.087, 37.416], [-122.083, 37.416], [-122.082, 37.419]]]);\n\n// Apply the cutLines method to the MultiLineString object.\nvar multiLineStringCutLines = multiLineString.cutLines({'distances': [10, 100], 'maxError': 1});\n\n// Print the result to the console.\nprint('multiLineString.cutLines(...) =', multiLineStringCutLines);\n\n// Display relevant geometries on the map.\nMap.setCenter(-122.085, 37.422, 15);\nMap.addLayer(multiLineString,\n {'color': 'black'},\n 'Geometry [black]: multiLineString');\nMap.addLayer(multiLineStringCutLines,\n {'color': 'red'},\n 'Result [red]: multiLineString.cutLines');\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 MultiLineString object.\nmultilinestring = ee.Geometry.MultiLineString([\n [[-122.088, 37.418], [-122.086, 37.422], [-122.082, 37.418]],\n [[-122.087, 37.416], [-122.083, 37.416], [-122.082, 37.419]],\n])\n\n# Apply the cutLines method to the MultiLineString object.\nmultilinestring_cut_lines = multilinestring.cutLines(\n distances=[10, 100], maxError=1\n)\n\n# Print the result.\ndisplay('multilinestring.cutLines(...) =', multilinestring_cut_lines)\n\n# Display relevant geometries on the map.\nm = geemap.Map()\nm.set_center(-122.085, 37.422, 15)\nm.add_layer(\n multilinestring, {'color': 'black'}, 'Geometry [black]: multilinestring'\n)\nm.add_layer(\n multilinestring_cut_lines,\n {'color': 'red'},\n 'Result [red]: multilinestring.cutLines',\n)\nm\n```"]]