ST_RemoveRepeatedPoints — 返回删除了重复点的几何图形版本。
geometry ST_RemoveRepeatedPoints(
geometry geom, float8 tolerance)
;
返回删除了重复的连续点的给定几何图形的版本。该函数仅处理(多)线串、(多)多边形和多点,但可以使用任何类型的几何体进行调用。GeometryCollection的元素是单独处理的。线串的端点将被保留。
如果 容忍度
参数,则彼此公差距离内的顶点被视为重复。
增强版:3.2.0
可用性:2.2.0
This function supports Polyhedral surfaces.
This function supports 3d and will not drop the z-index.
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'MULTIPOINT ((1 1), (2 2), (3 3), (2 2))')); ------------------------- MULTIPOINT(1 1,2 2,3 3)
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 0 0, 1 1, 2 2)')); --------------------------------- LINESTRING(0 0,1 1,0 0,1 1,2 2)
示例: 收集要素是单独处理的。
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'GEOMETRYCOLLECTION (LINESTRING (1 1, 2 2, 2 2, 3 3), POINT (4 4), POINT (4 4), POINT (5 5))')); ------------------------------------------------------------------------------ GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),POINT(4 4),POINT(4 4),POINT(5 5))
示例: 使用距离公差重复删除点。
SELECT ST_AsText( ST_RemoveRepeatedPoints( 'LINESTRING (0 0, 0 0, 1 1, 5 5, 1 1, 2 2)', 2)); ------------------------- LINESTRING(0 0,5 5,2 2)