拓扑构造器函数

CreateTopology

CreateTopology — 创建一个新的拓扑架构并将其注册到topology.topology 表中。

语法

createtopology ::=

参数

topology_schema_name

varchar类型。创建的拓扑名。

srid

integer类型。拓扑的空间参考系统 SRID

prec

double precision类型。容差精度以空间参考系的单位进行测量。 容差默认为 0。

hasz

boolean类型。hasz 默认为 false

返回值

返回值为 integer 类型。

示例

SELECT topology.CreateTopology('test') > 0;
?COLUMN?(boolean)      |
-----------------------
true                   |
总数目:1

CopyTopology

CopyTopology — 将拓扑(节点、边、面、层和拓扑几何)的副本复制到新模式中

语法

copytopology ::=

参数

existing_topology_name

varchar类型。复制的旧拓扑名

new_name

varchar类型。创建名为 new_name 的新拓扑

返回值

返回值为 integer 类型。

示例

select topology.copyTopology('t3d', 't3d-bis') > 0;
?COLUMN?(boolean)      |
-----------------------
true                   |
总数目:1

ST_InitTopoGeo

ST_InitTopoGeo — 创建一个新的拓扑架构并将其注册到topology.topology 表中。

语法

st_inittopogeo ::=

参数

topology_schema_name

varchar类型。

返回值

返回值为 text 类型。返回拓扑创建的文本描述。

示例

SELECT topology.ST_InitTopoGeo('sqlmm_topology');
ST_INITTOPOGEO(text)      |
--------------------------
Topology-Geometry 'sqlmm_t|
opology' (id:1) created.  |
总数目:1

ST_CreateTopoGeo

ST_CreateTopoGeo — 将几何图形集合添加到给定的空拓扑并返回详细说明成功的消息。

语法

st_createtopogeo ::=

参数

atopology

varchar类型。

acollection

geometry类型。

返回值

返回值为 text 类型。返回拓扑创建的文本描述。

示例

SELECT topology.ST_CreateTopoGeo('ma3_topo',
 ST_GeomFromText('MULTILINESTRING((384744 236928,384750 236923,384769 236911,384799 236895,384811 236890,384833 236884,
  384844 236882,384866 236881,384879 236883,384954 236898,385087 236932,385117 236938,
  385167 236938,385203 236941,385224 236946,385233 236950,385241 236956,385254 236971,
  385260 236979,385268 236999,385273 237018,385273 237037,385271 237047,385267 237057,
  385225 237125,385210 237144,385192 237161,385167 237192,385162 237202,385159 237214,
  385159 237227,385162 237241,385166 237256,385196 237324,385209 237345,385234 237375,
  385237 237383,385238 237399,385236 237407,385227 237419,385213 237430,385193 237439,
  385174 237451,385170 237455,385169 237460,385171 237475,385181 237503,385190 237521,
  385200 237533,385206 237538,385213 237541,385221 237542,385235 237540,385242 237541,
  385249 237544,385260 237555,385270 237570,385289 237584,385292 237589,385291 237596,385284 237630))',3438)
  );
ST_CREATETOPOGEO(text)      |
----------------------------
Topology ma3_topo populated |
总数目:1

TopoGeo_AddPoint

TopoGeo_AddPoint — 使用容差并可能分割现有边向现有拓扑添加点。

语法

topogeo_addpoint ::=

参数

atopology

varchar类型。现有拓扑名

apoint

geometry类型。

tolerance

float8 类型。

返回值

返回值为 integer 类型。

示例

SELECT topology.TopoGeo_addPoint('t', 'POINT(0.2 1 1)', 0.5);
TOPOGEO_ADDPOINT(int)      |
---------------------------
3                          |
总数目:1

TopoGeo_AddLineString

TopoGeo_AddLineString — 使用公差将线串添加到现有拓扑中,并可能拆分现有边/面

语法

topogeo_addlinestring ::=

参数

atopology

varchar类型。现有拓扑名

aline

geometry类型。

tolerance

float8 类型。

返回值

返回值为 integer 类型。

示例

SELECT topology.TopoGeo_addLinestring('test_topology', 'LINESTRING(0 0, 10 0, 0 1)', 2);
TOPOGEO_ADDLINESTRING(int)      |
--------------------------------
1                               |
总数目:1

TopoGeo_AddPolygon

TopoGeo_AddPolygon — 使用公差并可能分割现有边/面将多边形添加到现有拓扑。 返回面标识符。

语法

topogeo_addpolygon ::=

参数

atopology

varchar类型。现有拓扑名

apoly

geometry类型。

tolerance

float8 类型。

返回值

返回值为 integer 类型。

示例

SELECT topology.topogeo_AddPolygon('test_topology', 'POLYGON((76.68554 30.74,76.68726 30.74248,76.69223 30.74157,76.68554 30.74))'::geometry);
TOPOGEO_ADDPOLYGON(int)      |
-----------------------------
1                            |
总数目:1