名称

ST_UnaryUnion — 计算单个几何图形的组成部分的并集。

概要

geometry ST_UnaryUnion(geometry geom, float8 gridSize = -1);

描述

ST_Union 的单输入变体。输入可以是单个几何图形、多几何图形或几何图形集合。并集应用于输入的各个元素。

此函数可用于修复由于组件重叠而导致的无效多边形。但是,输入组件必须有效。无效的输入组件(例如蝴蝶结多边形)可能会导致错误。因此,最好使用 ST_MakeValid

此函数的另一个用途是将交叉或重叠的线串集合节点化和合并,使其成为 简单 的。(ST_Node 也可以做到这一点,但它不提供 gridSize 选项。)

可以将 ST_UnaryUnion 与 ST_Collect 结合使用以微调一次合并的几何图形数量。这允许在内存使用和计算时间之间进行权衡,在 ST_Union 和 ST_MemUnion 之间取得平衡。

如果提供了可选的 gridSize 参数,则输入将捕捉到给定大小的网格,并且结果顶点将在同一网格上计算。(需要 GEOS-3.9.0 或更高版本)

此函数支持 3d 并且不会删除 z 索引。

但是,结果是使用 XY 计算的。结果 Z 值被复制、平均或插值。

增强:3.1.0 接受 gridSize 参数。

需要 GEOS >= 3.9.0 才能使用 gridSize 参数

可用性:2.0.0

另请参阅

ST_UnionST_MemUnionST_MakeValidST_CollectST_Node