通过切割一个Geometry对象,返回一个GeometryCollection对象。
语法
geometry ST_Split(geometry input , geometry blade);
参数
参数名称 | 描述 |
---|---|
input | 目标Geometry对象。 |
blade | 切割器,用来切割目标对象的Geometry对象。 |
描述
- 该函数支持用(Multi)Point切割Line,用(Multi)Line或(Multi)Polygon切割线,用Line切割(Multi)Polygon。
- 返回的Geometry对象形始终是一个集合。
- 从理论上讲,将ST_Union应用于返回的集合元素应始终产生原始Geometry对象。
- 当(Multi)Polygon作为切割器时,其边界将用于剪切目标Geometry对象。
示例
使用LINESTRING切割POLYGON:
SELECT blade,
ST_Split(input,blade)
from (select ST_MakeEnvelope(0,0,2,2) as input,'LINESTRING(1 -1,1 3)'::geometry as blade) as t;