pyinterp.geometry.cartesian.algorithms.simplify#
- pyinterp.geometry.cartesian.algorithms.simplify(geometry: pyinterp.core.geometry.cartesian.LineString, distance: float) pyinterp.core.geometry.cartesian.LineString#
- pyinterp.geometry.cartesian.algorithms.simplify(geometry: pyinterp.core.geometry.cartesian.Ring, distance: float) pyinterp.core.geometry.cartesian.Ring
- pyinterp.geometry.cartesian.algorithms.simplify(geometry: pyinterp.core.geometry.cartesian.Polygon, distance: float) pyinterp.core.geometry.cartesian.Polygon
- pyinterp.geometry.cartesian.algorithms.simplify(geometry: pyinterp.core.geometry.cartesian.MultiLineString, distance: float) pyinterp.core.geometry.cartesian.MultiLineString
- pyinterp.geometry.cartesian.algorithms.simplify(geometry: pyinterp.core.geometry.cartesian.MultiPolygon, distance: float) pyinterp.core.geometry.cartesian.MultiPolygon
Simplifies a geometry using the Douglas-Peucker algorithm.
The algorithm removes points from the geometry while preserving its general shape. Points are removed if they are within the specified distance tolerance from the simplified line.
- Parameters:
geometry – Geometric object to simplify.
distance – Maximum distance tolerance for simplification.
- Returns:
A simplified version of the input geometry (same type).
Examples
>>> ls = LineString(np.array([0.0, 0.1, 0.2, 0.3, 1.0]), ... np.array([0.0, 0.05, 0.0, 0.05, 0.0])) >>> simplified = simplify(ls, distance=0.1) >>> # simplified has fewer points but similar shape