LineSimplification

The LineSimplification operator allows simplifying FeatureCollections of (multi-)lines or (multi-)polygons by removing vertices. Users can select a simplification algorithm and specify an epsilon for parametrization. Alternatively, they can omit the epsilon, which results in the epsilon being automatically determined by the query's spatial resolution.

For instance, you can remove the vertices of a large country polygon for drawing it on a small map. This results in a simpler polygon that is easier to draw and reduces the amount of data that needs to be transferred.

Parameters

ParameterTypeDescriptionExample Value
epsilon(optional) numberSpecify the parametrization of the simplification algorith, e.g. the distance threshold for two nodes in Douglas-Peucker. Must be > 0.
1.0
algorithmdouglasPeucker or visvalingamSelect a simplification algorith for being used, e.g. Douglas-Peucker or Visvalingam
"douglasPeucker"

Inputs

The LineSimplification operator expects exactly one vector input.

ParameterType
vectorSingleVectorSource

Errors

  • If epsilon is set but <= 0, an error is thrown.
  • If the input is not MultiPolygon or MultiLineString, an error is thrown.

Example JSON

{
  "type": "LineSimplification",
  "params": {
    "algorithm": "douglasPeucker",
    "epsilon": 1.0
  },
  "sources": {
    "vector": {
      "type": "OgrSource",
      "params": {
        "data": "ne_10m_admin_0_countries"
      }
    }
  }
}
{
  "type": "LineSimplification",
  "params": {
    "algorithm": "visvalingam"
  },
  "sources": {
    "vector": {
      "type": "OgrSource",
      "params": {
        "data": "ne_10m_admin_0_countries"
      }
    }
  }
}