名称

ST_NewEdgesSplit — 通过在现有边上创建一个新节点来分割边,删除原始边,并用两条新边替换它。返回创建的新节点 ID,该节点连接新边。

概要

integer ST_NewEdgesSplit(varchar atopology, integer anedge, geometry apoint);

描述

通过在当前边上创建具有点位置 apoint 的新节点,并删除原始边并用两条新边替换它,来分割具有边 ID anedge 的边。返回创建的新节点 ID,该节点连接新边。相应地更新所有现有的连接边和关系。

如果点几何的空间参考系统(srid)与拓扑结构不同,apoint 不是点几何,点为空,点已经作为节点存在,边不对应于现有边,或者点不在边内,则会引发异常。

可用性: 1.1

此方法实现了 SQL/MM 规范。 SQL-MM:拓扑网络例程:X.3.8

示例

-- Add an edge  --
SELECT topology.AddEdge('ma_topo', ST_GeomFromText('LINESTRING(227575 893917,227592 893900)', 26986) ) As edgeid;
-- result-
edgeid
------
	2
-- Split the new edge --
SELECT topology.ST_NewEdgesSplit('ma_topo', 2,  ST_GeomFromText('POINT(227578.5 893913.5)', 26986) ) As newnodeid;
 newnodeid
---------
       6