名称

ST_SimplifyVW — 使用 Visvalingam-Whyatt 算法返回几何图形的简化版本

概要

geometry ST_SimplifyVW(geometry geomA, float tolerance);

描述

使用 Visvalingam-Whyatt 算法返回给定几何图形的“简化”版本。实际上,它只对(多)线和(多)多边形进行操作,但您可以安全地对任何类型的几何图形调用它。由于简化是在逐个对象的基础上进行的,因此您也可以将 GeometryCollection 传递给此函数。

[Note]

请注意,返回的几何图形可能会失去其简单性(参见 ST_IsSimple)。

[Note]

请注意,拓扑可能不会被保留,并且可能导致无效的几何图形。使用(参见 ST_SimplifyPreserveTopology)来保留拓扑。

[Note]

此函数处理 3D,第三维将影响结果。

可用性:2.2.0

示例

使用 30 的最小面积阈值简化 LineString。

select ST_AsText(ST_SimplifyVW(geom,30)) simplified
FROM (SELECT  'LINESTRING(5 2, 3 8, 6 20, 7 25, 10 10)'::geometry geom) As foo;
-result
 simplified
------------------------------
LINESTRING(5 2,7 25,10 10)

                

另请参见

ST_SetEffectiveAreaST_SimplifyST_SimplifyPreserveTopology,拓扑 ST_Simplify