线性参照模型在地下管网GIS中的应用研究
2022-09-06蒋许锋赵虎川郑红立郭立强
蒋许锋 关 昆 赵虎川 郑红立 郭立强 彭 玲
1天津市滨海新区规划编制研究中心,天津,300450
2中国科学院大学,北京,100049
3中国科学院空天信息创新研究院,北京,100094
4天津市测绘院,天津,300381
5津然华润燃气有限公司,天津,300045
城市地下管线是指用于传送能源、信息和排泄废物的管道、管沟、管廊和线缆等及其附属物,包括供水、排水、燃气、热力、电力、通信、工业及其他类型,既有城市间的长输管线又有城市内部的管线,是保障城市运行的重要基础设施和生命线[1]。城市规划、建设、运营和应急等需要调查和测绘地下管线,建设地下管线地理信息系统,实现数据科学管理与共享应用[2]。地下管网GIS主要是为了管理这些数据,实现横纵断面分析和爆管分析等空间分析功能[3,4],满足管理部门的资产管理、日常巡检维修、安全应急等基本需求,还为城市规划、建设部门等其他部门提供数据支撑。
地下管网空间数据建模是地下管网GIS的关键,但是,传统的地下管网空间数据库数据结构大都是面向测绘资料管理[5-7],《城市地下管线探测技术规程CJJ61—2017》和《工程 测 量 规范(GB50026—2007)》对地下管线探测要求为:一般城市地下管线探测点布置间距为小于等于图上15 cm,工厂和小区小于等于图上10 cm,施工现场为地面10 m,弯曲点必须设点。由于埋深比高程在实际的管线开挖、维修和城市规划工作中更具有实用性,为了保留埋深数据,管线要素设计为两点式线段,但是造成了如下问题:①数据冗余,即两点式的管线存储方式导致了理论上(n-2)倍(n为一段管线的节点)的空间数据和管线属性数据冗余;②显示、传输和制图效率低,数据记录过多时,数据存取时I/O压力大,制图时反复符号化,显示速度慢,用户体验差;③空间查询、分析效率低,海量的数据在空间查询时需要反复计算空间关系,查询、分析资源消耗大,运行慢;④编辑维护困难,在管线编辑时抓取管线、获取垂点、获取连接点等操作效率低,容易造成程序不稳定。
线性参照模型是在线状要素的顶点处用M值(measure)来记录地理现象或者地理事件的一种具体技术方法,是一种非常优良的面向对象的时空数据建模方法。本文针对管网数据管理,利用M值记录埋深或者顶点唯一编码,分别称为简要线性参照地下管网建模和复杂线性参照地下管网建模,能够减少数据冗余,提升计算效率。该模型应用于天津市燃气管网GIS系统中,具有较好的实用性。
1 线性参照模型
线性参照模型(linear referencing model)可以简单的理解为沿着线要素,获取沿线某一点的属性信息,主要用于将动态事件与路径联系起来,因此又称为动态分段技术,常用于道路管理、制图综合等[8,9]。
在ArcGIS中,线性参照的具体实现方式是,在线状要素内部的顶点上增加M值,将(X,Y,Z)扩充为(X,Y,Z,M),变为一个长整型值,通过该值来标识动态分段,从而实现将某一线段关联到不同的属性[10-12]。一方面,任意编辑这些线段的属性,不会影响基础线状要素的几何特征;另一方面,通过它又可以将若干不同的属性与线段有机的组合起来了。显然,线性参照模型是一种优良的层次分明、面向对象的空间数据模型[13-15]。
将线性参照模型应用于管线数据库设计,利用M值在顶点上存储一个值作为索引,通过索引将顶点与其属性表链接起来,将两点式的管线结构转化为多点线结构,构建线性参照管网模型,就能够解决数据冗余问题,从而提升显示、传输、查询和分析效率。线性参照管网数据模型,可以采用两种方式实现。
1.1 简要线性参照管网模型
将M值直接记录埋深,这种方式只是比一般的简单shape结构多了一个顶点的埋深信息,使用简单方便。在数据处理时,只需将修改或者读取M值即可。如图1所示。
图1 简要线性参照管网模型Fig.1 Simple Linear Referencing Pipeline Model
1.2 复杂线性参照管网模型
将M值记录点位编号,同时将点位编号与埋深、设备、探测点一一对应,形成复杂的数据结构。如图2所示,这种方式能够完整的将设备、探测点与管线建立逻辑关系,这种方式还能够将管线事故(事件)与管线关联起来,达到动态分段管理的效果。但是,这种方式在查询埋深时不如第一种方式简单;在数据预处理、删除、编辑时操作复杂,容易导致逻辑错误。
图2 复杂线性参照管网模型Fig.2 Complex Linear Referencing Pipeline Model
2 天津市燃气管网GIS系统构建
本文将线性参照模型应用于天津市燃气管网GIS。取得了较好的效果。该系统以ArcGIS软件作为GIS平台软件,以Microsoft SQL Server作为数据软件,以C#作为开发语言,开发了CS(client server)模式的编辑子系统和BS(browser server)的综合应用子系统[16]。系统总体架构如图3所示。
图3 系统架构Fig.3 System Framework
2.1 管网数据库设计
系统数据包含天津市主城区内部大约400 km2范围内的高压、中压、低压管线。天津市地下管网探测技术规程要求不超过70 m探测一次、设备点和拐弯点必须探测一次,管线原始测绘数据量为133万多条。采用简要线性参照管网模型设计管线数据结构,按照管径、材质、设计压力对原始探测数据进行合并处理后,M值记录埋深。ArcGIS软件中,利用Merge工具按照上述属性进行处理,然后利用交叉点工具在三通、多通节点和阀门处打断。数据量由133.3万条减少到33.6万条,Shape文件大小由113MB降低到62.2 MB。
管线图层包括管线、调压设施、阀门、凝水缸、用户点、节点、气源站、储气设施、计量设施、极性保护、探测点等。如表1所示。
表1 管线图层Tab.1 Pipeline Layers
2.2 功能设计
系统包括数据编辑子系统、综合应用子系统等。
数据编辑子系统主要功能包括:图形浏览、查询定位、检查入库、数据编辑、工程图打印、垂距分析、流向分析、爆管分析、横断面图、纵断面图分析等(见图4)。
图4 编辑子系统功能Fig.4 Edit Sub-system Functions
综合应用子系统包括基于WebGIS后台管理模块和前端应用模块。后台包括矢量数据服务发布,瓦片更新、权限管理等。前端应用包括图形浏览、查询定位、专题查询、统计报表、拴点图输出、空间分析等(见图5)。
图5 综合应用子系统功能Fig.5 Application Sub-system Functions
2.3 系统的实现
编辑子系统的功能采用C#+ArcObject二次开发实现。首先继承ITool/ICommend将各种功能封装为组件,再继承IToolbar将各功能组件封装为工具条,通过全局变量实现权限控制。
应用子系统基于ArcGIS Server二次开发。主要以切片图层发布,专题图层以定时伺服程序实现切片自动更新。后台应用程序采用.Net实现,前端主要以Silverlight实现(见图6)。
图6 应用子系统Fig.6 Application Sub-system
3 结束语
随着管网数据量的海量增长,传统面向测绘资料管理的管网数据模型带来的冗余性弊端会越来越明显。将线性参照模型应用到管网数据建模中,建立线性参照管网模型,能够减少数据冗余,提升管线显示、制图、查询、统计、分析和共享效率。本文将该技术应用到天津市燃气管网GIS中,取得了不错效果。随着物联网技术的发展,管线动态监测数据将与管网数据紧密结合应用,线性参照模型的动态分段技术还能发挥更大的作用。