Name

ST_NewEdgesSplit — 通过沿现有边创建新节点、删除原始边并用两条新边替换它来分割边。 返回创建的连接新边的新节点的 id。

Synopsis

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

描述

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

如果点几何对象的空间参考系统(SRID)与拓扑结构不同,apoint不是点几何对象,点为null,点已经存在作为一个节点,边与现有边不对应,或者点不在边上,则会抛出异常。

可用性:1.1

该方法实现了SQL/MM规范。 SQL-MM: Topo-Net 例程: 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