ms_explode function

Convert multipart lines or polygons to singlepart

Convert multipart lines or polygons to singlepart

For objects of class Spatial (e.g., SpatialPolygonsDataFrame), you may find it faster to use sp::disaggregate.

ms_explode(input, ...)

Arguments

  • input: One of:

    • geo_json or character multipart lines, or polygons;
    • multipart SpatialPolygons, SpatialLines;
    • sf or sfc multipart lines, or polygons object
  • ...: Arguments passed on to apply_mapshaper_commands

    • force_FC: should the output be forced to be a FeatureCollection (or sf object or Spatial*DataFrame) even if there are no attributes? Default TRUE. If FALSE and there are no attributes associated with the geometries, a GeometryCollection (or Spatial object with no dataframe, or sfc) will be output.
    • sys: Should the system mapshaper be used instead of the bundled mapshaper? Gives better performance on large files. Requires the mapshaper node package to be installed and on the PATH.
    • sys_mem: How much memory (in GB) should be allocated if using the system mapshaper (sys = TRUE)? Default 8. Ignored if sys = FALSE. This can also be set globally with the option "mapshaper.sys_mem"
    • quiet: If sys = TRUE, should the mapshaper messages be silenced? Default FALSE. This can also be set globally with the option "mapshaper.sys_quiet"

Returns

same class as input

Details

There is currently no method for SpatialMultiPoints

Examples

library(geojsonsf) library(sf) poly <- "{\"type\":\"FeatureCollection\",\"features\": [\n{\"type\":\"Feature\",\"geometry\":{\"type\": \"MultiPolygon\",\"coordinates\":[[[[102,2],[102,3], [103,3],[103,2],[102,2]]],[[[100,0],[100,1],[101,1], [101,0],[100,0]]]]},\"properties\":{\"a\":0}}\n]}" poly <- geojson_sf(poly) plot(poly) length(poly) poly # Explode the polygon out <- ms_explode(poly) plot(out) length(out) out
  • Maintainer: Andy Teucher
  • License: MIT + file LICENSE
  • Last published: 2023-04-11