北京1:1万地形图更新数据处理程序的设计与实现

时间:2022-08-22 09:29:31

北京1:1万地形图更新数据处理程序的设计与实现

摘 要:为加快数字北京建设,北京市测绘设计研究院建立了覆盖全北京市域的1:1万DLG空间数据库。我院分别于2007年、2010年两次承担了相关基础数据的制作,笔者全程主持了该项目的内业数据处理,并独立开发了一套数据处理程序,本文对该程序功能设计与实现进行了初步介绍。

关键字:Autocad,VBA,数据入库,矢量数据,数据预处理

Abstract:In order to speed up the construction of digital Beijing, the Beijing municipal surveying and mapping design institute established over the Beijing urban spatial database of all DLG 1-1. Our hospital respectively in 2007 and 2010 for two related based data for the production, the author presided over the whole of the project in the industry data processing, and the independent development of a set of data processing program, this paper analyzes the program function design and implement a preliminary introduced.

Key: Autocad,VBA, Data storage, Vector data, Data preprocessing

中图分类号:S611 文献标识码:A 文章编号

0、 引言

1:10000地形图是我国国民经济各部门和国防建设的基本用图,主要用于一定范围内比较详细地描述和体现出地形变化。为适应社会发展和政府需要,北京市测绘设计研究院(以下简称北京院)从2003年期,开始建设覆盖北京市域范围内1:1万DLG空间数据库。我院分别在2007年和2010年承担了部分北京地形数据的制作,尤其是2007年底项目用途就是为我国2008年奥运项目服务。

针对北京辖区内地形复杂,山地、丘陵众多的地理情况,以及出于数据保密的目的,北京院对数据成果有着特殊要求处理。结合我院生产技术的实际情况,通过探索,制定出比较高效的一套数据处理、加工的作业流程,并独立开发了一系列数据处理程序。

1、 数据入库流程

1.1 工程技术要求

由于北京是我国政治文化中心,具有其特殊性,在地形数据的地物编码、数据结构、编辑要求与国家标准有一定不同。例如为保证铁路连贯性,设立了单独的代码表示不可见的各种铁路;河流构面时岸边有坡坎的,以坡坎作为构面的边线;曲线尽量保持连续,遇双线河、湖泊、水库等可以断开,遇到居民地做遮掩处理;总体要求图面以表示合理为主,其次兼顾数据等等。为此北京院专门制定了“数据加工方法细则”手册,编制了相关的规定要求。

1.2 工作流程

我院承担的任务主要是地形数据的更新以及数据入库前期的整理,制作符合北京入库数据要求,格式数据为AutoCAD的DWG格式,同时编辑、处理图面,使图形图表示合理,符合项目规范要求。数据编辑处理平台为CAD2004,使用北京院提供的线型、字体、独立地物的块符号等。主要工作流程为:

2、 程序的设计与实现

2.1功能设计

对2007年与2010年原始地形数据分析,2007年数据比较混乱,部分数据在图层、代码、线型、符号都不符合要求,甚至某些图中多段线有多个不同形式存在,这使前期数据处理非常困难。本套程序建立于2007年,针对当时数据情况以及项目要求编制,并在2010年根据新的要求,进行了适当的修改。本套程序按照工序以及功能共分为:数据预处理、数据赋代码、数据整理、数据编辑、数据检查以及辅助功能6大模块。

2.2程序功能的介绍

2.2.1数据预处理,此组程序主要处理在测图、矢量化过程中产生的不符合规定的错误数据。

(1) 整理多段线宽度,主要功能是处理全幅图中多段线的全局宽度,按照北京数据要求,依据图式规定,自动为不同性质的线状地物赋予不同的全局宽度。

(2)二点多段线检查,主要针对测图、矢量过程中产生的只有两个节点并且两节点距离在0.2米范围内的多段线。运行程序后,此类数据自动送到“jc”层,删除与否由人工判定。

(3)检查处理多段线上重点问题,处理对象为两节点距离在0.001米范围内的多段线,符合要求的多段线,删除其中一个节点,其他属性保持不变。

(4)曲线抽稀,主要处理节点距离在0.2米范围内,或前后三点距离不超过15米,并且三点之间角度不超过1度(因为三点之间垂直距离为0.2618m)的多段线,抽稀中间点,新生成数据放在qxcx层,属性保留不变。原始数据不被破坏,是否保留由人工自行判定。

(5)检查处理封闭线,按照项目要求最后节点与起始节点坐标重合。通过程序自动检查所有封闭线并将不符合要求的数据转换为符合项目规定的数据格式。

2.2.2数据赋代码,根据测图时图形数据参数的设定以及针对原始数据的分析,通过此组程序的运行,自动将地物数据分别存放到对应符合要求的图层中,并赋予正确代码,线状地物赋线型,点状地物自动添加块符号。

(1)数据赋代码,根据读取的北京界线范围内的数据按照规定赋予相应代码,以及属性设置。

(2)数据赋9999,将北京界线范围外的数据或设计书未提到的地物赋代码为9999。

2.2.3数据整理,针对数据赋代码后或图形编辑后得数据进行初步整理。

(1)前5项与数据预处理中程序的功能与要求相似,主要针对原始数据中含有代码赋值。

(2)单线路处理,部分原始数据中单线路在Feature层中含有道路中心线,通过此程序,自动处理不符合设计书规定的数据。

(3)高程点数据处理,按照项目规定处理高程点小数位,不添加高度数据。

(4)处理整幅图形多段线属性,按照项目规定整理多段线的数据属性,例如线型显示比例因子,颜色是否随层,线型启用等。

2.2.4数据编辑,提供一系列部分图形数据的编辑、绘制,属性的添加等功能。

(1)“中线生边线”:主要针地物宽度不固定,程序根据提供的中心线和宽度生成符合要求的边线。

(2)“固定宽度生边线”:主要针对宽度固定的地物,程序自动按照中心线,绘制出符合规定的边线。

(3)“绘制电力线”:线型库中没有电力线线型,通过本程序执行,直接绘制出符合项目规定的电力线。

(4)“生成电力线”:直接选取想要生成电力线线型的多段线,自动生成电力线。

(5)“多段线反向”:点取多段线,重新生成反向的多段线。

(6)“文字遮掩”:根据项目规定,生成文字遮掩框。

(7)“手工赋代码”:手工赋地物代码。

2.2.5数据检查,提供包括图形和代码的两方面一系列的数据检查。

(1)高程点数据检查,检查高程点,比高点是否有高度,精度是否符合技术要求。

(2)“中线节点检查”:检查道路中线在相交处是否有节点重合。

(3)“图面检查”:检查图面线状数据是否符合图式要求例如半依比例尺房等,不符合要求的生成意见标示。

(4)“手工察看代码”:手工选取地物察看属性,可以检查、对比选取地物的代码是否一致,主要针对接边检查。

(5)“代码检查”:检查北京境界内外数据,图形所在层、代码是否符合项目规定。

(7)“整体检查”:整体数据图层、线型、块的调用、字体、系统参数等一系列参数设定的检查。

(8)“生成检查报告”:根据检查层注记,生成检查报告。

2.2.6辅助功能,提供一系列辅助的程序,方便作业。包括对图层的开启、关闭、显示等便捷操作,以及地物、遮掩等图形显示操作等。

2.3程序的设计与实现

本套程序是在Autocad 2004平台下,利用Autocad下自带的开发语言VBA。VBA是自 R14开始嵌套在AutoCAD 之中的新的程序设计方法。VBA是VB的特殊形式,它是将VB环境移植到应用程序中,为AutoCAD的进一步开发,提供了新的一种高质量的用户化编程手段。其优点是可以很容易地使用 Windows 系统资源,使AutoCAD能很容易地与其它Windows下的应用软件交互共享资源。VBA 对话框设计能力比 DCL 强,在多文档环境下的应用程序也比VisualLISP提供了更多的支持。此外,VBA的加入扩展了AutoCAD集成用户化工具的能力,集成了AutoLISP、VisualLISP和ObjectARX API等工具,可以按用户需求的工作方式开发应用程序。北京数据处理程序就是充分利用VBA的开发特点,从解决实际问题出发,在生产中得到了良好的应用。程序界面如图所示。

3、 结束语

本程序解决了北京1:1万地形图数据入库过程中遇到的问题,实现了数据快速处理、质量监管,大大的提高了作业效率,对生产起到了很好的促进作用。

[参 考 文 献]

[1] 《1:10000地形图数据提交要求》北京市测绘设计研究院

[2] 《1:10000地形图数据库结构设计》北京市测绘设计研究院

[3] 《AutoCAD Visual Basic开发技术》张国宝 科学出版社

作者简介:王鑫(1975――),男,测绘高级工程师,本科,毕业于辽宁大学计算机管理及应用专业,现从事与测绘内业数据处理,新技术的应用,程序开发等相关工作。

注:文章内所有公式及图表请用PDF形式查看。

上一篇:浅谈景观块石在水利工程中的应用 下一篇:浅谈全站仪使用和操作