王振宇,李宏伟,王海涛
(1.信息工程大学 地理空间信息学院,河南 郑州 450001)
地下管线数据的点线联动编辑方法
王振宇1,李宏伟1,王海涛1
(1.信息工程大学 地理空间信息学院,河南 郑州 450001)
通过分析管线数据编辑的特点,结合管线数据本身的结构特征,给出了一种解决同一要素集内管线数据点线联动的方法,并由此引申出了基于要素集的管线数据编辑方法。
地下管网;要素集;管线编辑;关联关系;点线联动
在常见的地下管线采集和编辑系统中,管线点要素和线要素的编辑都是基于自身分开的独立要素层进行的[1]。这种编辑方式过于复杂、繁琐。本文提出基于要素集的点线联动,尝试在要素集层次实现点线联动的功能,简化编辑过程,达到提高编辑效率的目的。
地下管线可抽象为管线点(管线特征点)和管线段。管线点分为明显点、隐蔽点和管线特征点(交叉点、分支点、转折点、起止点以及管线上的附属设施中心点)。管线段又组成环,地下管网为环状网和树状网组成的复杂网络。管线点和管线段除具有图形数据外,还具有属性数据。管线点属性项包括管线点编号、管线点类型、规格、材质、埋深、地面高程等;管线段属性项包括管线段编号、管线段类型、规格、材质、修建年代、产权单位等[2]。地下管线数据具备以下特点:
1)点线拓扑关系。管线点必须在管线段上,孤立的管线点数据是无效的。管线线要素的端点必定被对应的点要素覆盖,这是因为同一要素集的各个线要素之间是被管线点连接起来的,且管线线要素必须存在结束的设施点。
2)管线类型分层。不同管线之间不存在管线相交,因此管线间不存在拓扑关系。不同的管线类型之间可实现信息分层,综合管线数据可根据管线类型的不同分成包含点要素和线要素的要素集,要素集内的点要素和线要素也是分层的。
3)反映管线空间特征,可绘制纵横剖面图[3]。横剖面是指垂直于管线位置的一个截面,在该截面中可以直观地了解相邻的空间位置关系及道路中心线、地面和道路红线的距离。纵剖面是指沿管线方向的一个截面,在该截面中,可以直观地考察管线的走向和坡度。纵剖面对于高程差的污水管线和雨水管线尤其有用。
管线数据种类繁多、数量庞大,为了更好地处理和应用管线数据,可借鉴ArcGIS中要素数据集的概念,将管线数据分成一个个要素集,如将电力管线点和电力管线段归到电力管线要素集中,既方便归类又方便以后创建地下管网。
综上所述,管线数据呈现“低耦合高内聚”的特性,即要素集内的管线点要素和线要素密切相关,要素集间的管线数据之间关联性较弱。因此,本文提出基于要素集层次的管线数据点线联动的编辑方法,通过给要素集内的管线数据添加一个关联关系,在GIS软件中实现管线点要素和线要素的同时移动。
通过建立管线要素集内的关联关系,可帮助地下管网编辑系统在移动管线点要素时迅速找到对应要素集内的管线,进而在移动点要素时,可同时触发并实现要素集内管线线要素的移动,实现管线数据的点线联动。关联关系的设计,要能实现在编辑过程中由要素集内的一种管线数据快速找到另外一种管线数据,方便对要素集进行联动编辑。设计的关联关系为:gsRelate-关系名称;MainClass-主要素名称;SubClass-副要素名称;PointTouchLine-关联类型。
为了验证设计的关联关系是否能在编辑过程帮助实现点线联动,借由ArcGIS软件平台,开发了一些扩展工具进行实验。
如图1所示,本文应用某城市地下管线历史测量数据中的部分给水管线和电力管线数据进行实验,利用ArcMap中的编辑模块开始和结束编辑,方便实验过程中进行Undo/Redo的操作。点线联动工具实现的是移动管线点的同时关联线数据也跟着自动移动,因此在选择当前编辑图层时应当选择管线点数据图层。在开始移动之前判断是否存在关联关系,一方面是为同一要素集内的管线点数据和线数据建立关联关系,另一方面便于对已经设置过关联关系的管线数据集直接进行编辑操作。
图 1 点线联动实验模型设计框架
在ArcMap加载数据和编辑模块开启编辑之前,工具条的使用是无意义的,因此只有在StartEditting时激活工具条,实现工具条初始化,加载工具条所需的相关数据,进而开始编辑操作。在关联设置之前于工具条内选好当前编辑层和所要关联的要素,然后进行关联设置。
管线关联关系设置完毕后,就可开始进行点线联动的编辑操作。点线联动原理是:在图上点击要移动的管线点,在设置好的缓冲区半径内搜索管线点,选中一个管线点要素;根据之前设置好的关联关系,过滤出与所选管线点在一个要素集内相关的管线线要素,然后根据管线数据存在点线拓扑关系的特点,考虑到测量数据往往存在一定的误差,因此设置一个阈值,在选好的管线点附近搜索关联线要素;最后移动点位,同时移动相关线要素与所选管线点“重叠”的线要素端点,实现管线数据的点线联动编辑。点线联动算法如下:
鼠标点击图上点位P,要移动的管线点P*,与P*连接的管线段集合L*,a、b为设置的缓冲区半径。
1) 搜索 P 点附近的管线点 Pi,当距离 d(P, Pi)< a,找到 P*=Pi;
2)由管线点P*(MainClass)找到所属的feature dataset,进而找到要素集内的管线段(SubClass)集合L(L1,L2,… ,Li);
3)遍历集合L(L1,L2,…,Li),当管线段起始点 Start-PLi到P*的距离 D(P*,Start-PLi)< b或终点End-PLi到 P*的距离 D(P*,End-PLi)< b,找到与要移动的管线点相连接的管线段集合L* (Li…Lj);
4)移动管线点P*的同时移动管线段集合L*相应的端点,实现点线联动。
图2 点线联动前示意图
图3 点线联动后效果图
如图2、图3所示,在移动给水管线点1JS48后,与之相关联的3条给水管线段同时发生了移动,且保持原始方向不变。观察图上管线数据的标注,管线点和管线段的标注也都随之移动到了新的位置,并做好了旋转操作。
[1] 鲍其胜,林海,何立恒. 城市地下管线图点线联动编辑探讨[C].江苏省测绘学会2007学术年会, 2008
[2] 蔡岷. GIS技术在地下综合管线系统中的应用[D]. 大连:大连理工大学,2006
[3] 刘守军,黄慧,张燕江.无拓扑关系下GIS图形编辑联动的解决办法[J].武汉大学学报:信息科学版,2003,28(1):111-114
[4] 杨伯钢. 城市地下管线数据建库与共享应用[M]. 北京:测绘出版社,2011
[5] 农宇,杜清运. 基于Geodatabase的城市地下综合管线数据库设计[J]. 测绘信息与工程, 2010, 35(6): 36-38
[6] Yang J, Liu Y, Peng Z, et al. Research on Developing an Underground Pipeline Information System with ArcGIS Engine[C]. MIPPR 2005 Geospatial Information, Data Mining,and Applications, International Society for Optics and Photonics,2005
[7] Liu Weimu, Liu Houquan. The Implementation of Map Editing Based ArcGIS Engine[J]. Microcomputer Information, 2009(4): 80
[8] Gao Tiejun. Research on Pipeline Model Construction and Pipeline Rules Application in ArcGIS[J]. Science of Surveying and Mapping, 2009(6): 103
Method of Pipeline Linkage Editing in Underground Pipeline Data
byWANG Zhenyu
Through analyzing the characteristics of the editing in pipeline data, with the structure of the pipeline data, this paper gave a solution moving point with polyline in feature dataset. And a method of editing based on feature dataset was put forward which contributed to solving the editing problem of point with polyline in urban underground pipeline system at the same time.
underground pipeline network,feature dataset,pipeline editing,relationship,pipeline linkage
P208
B
1672-4623(2014)02-0130-02
10.11709/j.issn.1672-4623.2014.02.046
2013-07-16。
项目来源:国家自然科学基金资助项目(41140012、41271392)。
王振宇,硕士,研究方向为空间数据挖掘、GIS开发与应用。