Introduction: Returns a POINT guaranteed to lie on the surface.
Format: ST_PointOnSurface(A: Geometry)
Return type: Geometry
Since: v1.2.1
Examples:
SELECT ST_PointOnSurface(df.geometry) FROM df
Input: POINT (0 5)
Output: POINT (0 5)
Input: LINESTRING(0 5, 0 10)
Output: POINT (0 5)
Input: POLYGON((0 0, 0 5, 5 5, 5 0, 0 0))
Output: POINT (2.5 2.5)
Input: LINESTRING(0 5 1, 0 0 1, 0 10 2)
Output: POINT Z(0 0 1)