王永峰,王涛,徐莹
(天津市测绘院,天津 300381)
城市地下管线放线测量是城市规划测量中常见的测绘项目,包括了外业和内业两部分工作。在内业处理中主要需制作DWG格式的放线成果图及编制放线报告,其中放线报告包括Word格式的电子文档和shapefile格式的管线路由文件,Word文档包含了两类信息:放线桩点平面坐标和测区范围控制点信息。放线报告中这些内容的完成通常采用人工操作的方式,不仅效率低下且易出错。鉴于此,本文提出了基于ArcGIS 10建模工具ModelBuilder进行放线测量成果的自动化处理,即在制图人员利用CAD软件完成放线成果图的基础上,利用ModelBuilder工具可方便快捷地完成Word文档所需信息的提取及管线路由shapefile文件的制作。
DWG格式的管线放线测量成果图包含两类要素:地理图形要素和图廓要素,地理图形要素又可分为三类即地形图要素、现状管线地理要素和放线路由要素,编制放线报告的基础是放线路由要素。从DWG图形中提取出放线路由要素并保存为名为FXLY.dwg的DWG文件,以下处理将主要基于FXLY.dwg文件并利用ModelBuilder工具展开。
FXLY.dwg文件内容如图1所示,其由路由折线、放线点点名标注、放线桩点十字丝、规划距离标注四部分组成。利用ModelBuilder建模工具可快捷实现DWG文件中各种类型要素(包括点、线、面、注记)的shapefile文件化,因而可以将FXLY.dwg中的路由折线(线状要素)、放线点点名标注(注记要素)、放线桩点十字丝(线状要素)提取出来并生成相应的shapefile文件,由路由折线转化而来的便是放线路由shapefile文件。ArcGIS提供了完备的空间分析等数据处理功能供ModelBuilder调用,利用相应的空间分析方法,依据放线点点名标注shapefile文件、放线桩点十字丝shapefile文件和平面控制点总图shapefile文件可自动得到放线桩点平面坐标和测区平面控制点信息两类必要信息,这样便实现了替代人工处理以取得准确性和速度两方面提高的目的。这种处理也体现出了在常规测绘数据制作过程中Arc-GIS软件与CAD制图软件的互补。
图1 FXLY.dwg文件示意
DWG图形文件在ArcGIS中被组织成5个图层,依次为文字注记Annotation层、点状物Point层、线状物Polyline层、面状物Polygon层和MultiPatch层。对于FXLY.dwg文件来说,Polyline层存储路由折线和放线点十字丝,Annotation层存储放线点点名注记要素,Point层存储放线桩点中心(与放线桩点十字丝中心重合)要素。
本方法的原理为:
(1)从FXLY.dwg提取出路由折线并利用Model-Builder生成shapefile格式路由文件。
(2)同样,利用ModelBuilder工具从FXLY.dwg中提取出放线点标注并生成点名注记shapfile文件,提取出十字丝图形生成线状十字丝shapfile文件,十字丝图形shapfile文件包含了放线桩点的坐标信息。利用ArcGIS的空间连接功能,基于距离最短原理自动匹配出放线点点名与放线点坐标的映射关系,进而自动得到放线点平面坐标。
(3)将平面控制点总图shapefile文件与放线路由shapefile文件进行叠加,利用ArcGIS的缓冲区分析功能得到测区范围平面控制点信息。
平面控制点总图shapefile文件同样不是现成的,其基础数据是DWG格式的平面控制点总图,DWG格式的平面控制点总图包含了控制点点名和控制点中心(点状物)两种类型的要素。同上述路由FXLY.dwg文件的处理类似,将DWG格式的平面控制点总图的两种要素shapefile文件化后,通过空间连接操作可得到最终的平面控制点总图shapefile文件,将其命名为NEW_DJZ.shp文件。NEW_DJZ.shp文件只需生成一次即可。
ModelBuilder是ArcGIS自带的数据建模工具,为设计和实现ArcGIS的各种数据处理提供了一个图形化的建模环境。利用ModelBuilder建立的模型是以流程图的形式表示的,主要由地理数据处理工具和地理数据组成的,数据处理工具在ArcGIS的ArcToolbox中均可以找到原形。
(1)ModelBuilder建模工具的优点有:
①是自动化的数据处理流程。ModelBuilder把数据处理工具和地理数据通过流程化结合在一起并实现自动化运行。
②共享数据处理,方便他人实现模型的重复使用。ModelBuiler的数据和工具都通过图形方式表示,简单易懂且易于编辑修改,建模工具可方便的共享。
③Model的运行可以像ArcToolbox中的工具一样运行,简洁实用。
④模型可以包括复杂的处理过程,并且一个复杂的模型中还可包含子模型,实现更复杂的应用。
(2)放线测量报告工具如图2所示,该工具包括如下几个步骤:
①从FXLY.dwg文件中提取各要素并生产各种shapefile文件,包括路由shapefile文件(命名为SZGC.shp)、放线点点名注记 shapefile文件(命名为 ID.shp)、十字丝图形shapfile文件(命名为CROSS.shp)。
图2 放线测量工具面板
②路由SZGC.shp文件字段的自动编辑。因为从FXLY.dwg文件直接转化而来的SZGC.shp文件其字段不符合放线测量成果的要求,通过ModelBuilder建模工具可实现路由shapefile文件相应字段的删除、添加,从而形成符合要求的路由SZGC.shp文件,如图3所示。
③得到放线点平面坐标文件。如图4所示,通过ModelBuilder提供的空间连接这一数据处理接口,基于距离最短原理可将十字丝CROSS.shp文件中的每个要素与点名注记ID.shp文件中的每个要素一一对应起来并挂接到一个新的要素中,所有这些新的要素的集合构成新的文件JOIN.shp。JOIN.shp文件中的每个要素均有点名与放线点平面坐标值,从中提取点名与平面坐标信息从而形成放线点平面坐标成果并命名为ZB.txt。
④得到测区范围控制点信息。这一处理的原理是利用缓冲分析功能,将路由SZGC.shp文件中的路由折线要素进行缓冲得到面状缓冲区,依据天津市平面控制点分布状况设置缓冲区的半径为 3 km,缓冲区与点状的平面控制点总图进行叠置求交分析得到测区范围所覆盖的控制点,如图5所示。
图5 得到测区控制点信息
生成临时文件包括两个过程:①由FXLY.dwg文件的polyline层提取出路由shapefile文件和十字丝图形shapefile文件,两者通过不同的条件筛选得到,如十字丝图形shapefile文件的要素均为长度固定为6个单位长度且角度水平或垂直的线段,而路由shapefile文件的要素则不如此,如图6所示;②由FXLY.dwg中的放线点名称注记转化为注记shapefile文件,但其过程不如路由 SZGC.shp、十字丝 CROSS.shp文件等图形文件简单,须先利用CAD至Geodatabase地理数据库工具将整个FXLY.dwg转化为gdb数据库文件,再利用“要素类至要素类”和“要素类转Shapefile”2个工具才能得到,如图7所示。
图6 SZGC.shp和CROSS.shp文件的生成
图7 点名注记ID.shp文件的生成
进行上述处理前还需在电脑硬盘下建立数据处理工作区,如在D盘建立“放线测量报告自动处理”工作区,并将NEW_DJZ.shp和FXLY.dwg放入该工作区中。然后按工具面板所示依次点击即可自动得到所需结果,临时文件和最终成果文件均存放在该工作区目录下。
该程序投入生成应用的实践证实,采用上述自动化处理速度很快,相对于人工操作来说具有速度上的优势,更重要的是运用该程序释放了人力,同时由于用机器运算替代人工操作,避免了人为的误差从而提高了结果的准确性,与此同时也减轻了质检人员的工作量。
城市测绘院在生产各类测绘成果图所使用的数据制作软件平台通常是CAD或类似图形编辑软件,这类软件强于图形绘制而在空间分析、数据管理方面则较弱,而这一方面正是ArcGIS软件的强项。本文所提出的借助ArcGIS软件实现CAD图形文件的数据自动化处理充分体现了ArcGIS软件对CAD软件的互补。
利用自动化处理的程序替代繁杂人工操作在日常测绘产品生产中的重要性日益突出,测绘单位在基于CAD平台的测绘产品制作过程中较多采用LISP或VBA语言编制程序。本处理若基于CAD平台采用LISP或VBA语言则需编写可靠的空间分析算法,这是比较困难的,而ArcGIS软件则提供了现成的工具以供简洁调用,这充分体现了ArcGIS的优点。不仅如此,Modelbuilder建模工具这种堆积木式的程序并不要求搭建者具有成熟的开发能力,因而大大降低了程序构建的难度,可以说是一种简单、高效且易移植的实用方法。
[1]倪锡春,范园园,陈永良.基于ModelBulider的城市部件数据建库[J].城市勘测,2013(4):45~48,52.
[2] 王波,张亮,孙霞.CAD向GIS数据的转换入库[J].地理空间信息,2011,9(3):24 ~26.
[3]CJJ/T8-2011.城市测量规范[S].
[4]ESRI,ArcGIS 10新特性之模型构建器[DB/OL].ArcGIS Resource Center,2012.
[5]天津市市政工程规划放线测量技术规程[R].天津:天津市地下空间规划管理信息中心,2012.