ST_REMOVEREPEATEDPOINTS
📄字数 739
👁️阅读量 加载中...
功能描述
返回删除了重复点的几何图形。
语法格式
sql
GEOMETRY ST_REMOVEREPEATEDPOINTS(GEOMETRY geom, DOUBLE tolerance);参数说明
- geom:目标 GEOMETRY 对象。
- tolerance: 容差,容差距离内的顶点将被视为重复。
函数返回类型
GEOMETRY 类型
使用说明
- 该函数仅处理(多)线串、(多)多边形和多点,但可以使用任何类型的几何图形进行调用。
- GEOMETRYCOLLECTIONS 的元素是单独处理的。
- LINESTRINGS 的端点被保留。
- 该函数支持多面体曲面。
- 该函数支持 3d 并且不会丢失 z-index。
示例
sql
SQL> SELECT TO_CHAR(ST_ASTEXT( ST_REMOVEREPEATEDPOINTS( 'MULTIPOINT ((1 1), (2 2), (3 3), (2 2))')));
+-------------------------------+
| EXPR1 |
+-------------------------------+
| MULTIPOINT((1 1),(2 2),(3 3)) |
+-------------------------------+
SQL> SELECT TO_CHAR(ST_ASTEXT( ST_REMOVEREPEATEDPOINTS( 'LINESTRING (0 0, 0 0, 1 1, 0 0, 1 1, 2 2)')));
+---------------------------------+
| EXPR1 |
+---------------------------------+
| LINESTRING(0 0,1 1,0 0,1 1,2 2) |
+---------------------------------+集合元素是单独处理:
sql
SQL> SELECT TO_CHAR(ST_ASTEXT( ST_REMOVEREPEATEDPOINTS( 'GEOMETRYCOLLECTION (LINESTRING (1 1, 2 2, 2 2, 3 3), POINT (4 4), POINT (4 4), POINT (5 5))')));
+------------------------------------------------------------------------------+
| EXPR1 |
+------------------------------------------------------------------------------+
| GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),POINT(4 4),POINT(4 4),POINT(5 5)) |删除在容差距离内的重复点:
sql
SQL> SELECT TO_CHAR(ST_ASTEXT( ST_REMOVEREPEATEDPOINTS( 'LINESTRING (0 0, 0 0, 1 1, 5 5, 1 1, 2 2)', 2)));
+-------------------------+
| EXPR1 |
+-------------------------+
| LINESTRING(0 0,5 5,2 2) |
+-------------------------+