Skip to content
Apache Sedona 1.9.0 is out now, featuring Spark 4.1 support, proj4sedona CRS transformation, Bing Tile functions, and more!

ST_LineSegments

Introduction: This function transforms a LineString containing multiple coordinates into an array of LineStrings, each with precisely two coordinates. The lenient argument, true by default, prevents an exception from being raised if the input geometry is not a LineString.

ST_LineSegments

Format:

ST_LineSegments(geom: Geometry, lenient: Boolean)

ST_LineSegments(geom: Geometry)

Return type: Array<Geometry>

Since: v1.7.1

SQL Example:

SELECT ST_LineSegments(
        ST_GeomFromWKT('LINESTRING(0 0, 10 10, 20 20, 30 30, 40 40, 50 50)'),
       false
    )

Output:

[LINESTRING (0 0, 10 10), LINESTRING (10 10, 20 20), LINESTRING (20 20, 30 30), LINESTRING (30 30, 40 40), LINESTRING (40 40, 50 50)]

SQL Example:

SELECT ST_LineSegments(
        ST_GeomFromWKT('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))')
    )

Output:

[]